Добавить кнопку Сравнение в Opencart

Если Вам необходимо добавить кнопку «Сравнение» наподобии как кнопка «Закладки» в Opencart, то необходимо проделать следующие шаги:
1. Открываем файл catalog\view\theme\ваша тема\template\common\header.tpl
Добавляем:

2. Открываем файл catalog\controller\common\header.php
Добавляем:
$this->data['text_compare'] = sprintf($this->language->get('text_compare'), (isset($this->session->data['compare']) ? count($this->session->data['compare']) : 0));
В этот же файл добавляем:
$this->data['compare'] = $this->url->link('product/compare');
3. Открываем catalog\language\russian\common\header.php
Добавляем:
$_['text_compare'] = 'Сравнение товаров (%s)';

Убрать описание со второй страницы категории Opencart

Для SEO оптимизации важно, чтобы один и тот же текст располагался только на одной странице. В CMS Opencart изначально описания для категории выводятся на всех страницах пагинации данной категории. Решить эту проблему можно следующим способом:

Открываем файл /catalog/controller/product/category.php и находим в нем следующую строчку:
Читать далее

Указание основной страницы для категорий Opencart

1. Проверяем в head — прописано ли canonical:

<head>
...
<link href="http://сайт/раздел" rel="canonical" />
...
</head>

2. Если нет, тогда находим файл /catalog/controller/product/category.php и после строк

$this->document->setDescription($category_info['meta_description']);
$this->document->setKeywords($category_info['meta_keyword']);

Читать далее

Уникализируем title категории в Opencart

Для уникализации title категории в Opencart необходимо сделать следующие шаги:

  1. Находим файл /catalog/controller/product/category.php
  2. Находим код:


if ($category_info) {
if ($category_info['seo_title']) {
$this->document->setTitle($category_info['seo_title']);
} else {
$this->document->setTitle($category_info['name']);
}

Изменяем на:

if ($category_info) {
if ($category_info['seo_title']) {
if ($page > 1) {
$this->document->setTitle($category_info['seo_title'].' - Страница ' .$page );
}
else {
$this->document->setTitle($category_info['seo_title']);
}
} else {
$this->document->setTitle($category_info['name']);
}

Либо еще лучше сделать следующую конструкцию (вместо title замешивать h1):

if ($category_info) {
if ($category_info['seo_title']) {
if ($page > 1) {
$this->document->setTitle($category_info['seo_h1'].' - Страница ' .$page );
}
else {
$this->document->setTitle($category_info['seo_title']);
}
} else {
$this->document->setTitle($category_info['name']);
}