Оптимизация пагинации в опенкарт

Оптимизация пагинации в опенкарт

Оптимизация интернет магазина, как ремонт — начинается и никогда не заканчивается. Если вы думаете, что это шутка, то ошибаетесь. Интернет магазин — это инструмент вашего бизнеса, который находится в постоянном движении. Вы можете управлять этим движением либо пустить все на самотек. Результат в обоих случаях очевиден.

Хватит лирики, перейдем к практике. В нашей статье «Сортировка товаров по дате поступления в Опенкарт» мы предложили вариант, как поменять порядок вывода товаров в категории. В данной статье мы рассмотрим оптимизацию страниц пагинации, а точнее вывод разных описаний (description) и заголовков (title) на главной странице категорий и всех последующих. Подобная оптимизация помогает сделать каждую страницу пагинации уникальной и позволяет избавиться от дублей. Насколько это бывает вредно, читайте в статье «Внутренние дубли страниц». Если вы закрыли страницы пагинации от индексации, то вам данная процедура не нужна.

Оптимизируем страницу категорий прямо в коде

Все манипуляции выполнялись на версии опенкарт 2.3 (ocStore 2.3.0.2.3) с темой по умолчанию. Если вы используете нестандартную тему, приведенный код может отличаться.

Мы не сторонники прямых изменений стандартного кода opencart, но данный метод позволяет разобраться, где и что меняется.

Находим контроллер категорий (файл по указанному адресу): /catalog/controller/product/category.php

Ищем строку: $this->document->setTitle($category_info['meta_title']);

Меняем на:

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

Таким образом заголовок главной страницы категории будет выглядеть так, как вы его прописали в админ панели, а ко всем последующим будет добавлена запись: “— страница 2” . Вместо 2 будет указан номер текущей страницы.

С заголовком мы разобрались. Находим в этом же файле строку:

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

И меняем ее на:

if($page == 1) {$this->document->setDescription($category_info['meta_description']);}

Данная строка выводит описание (description) только на главной странице категорий. На всех последующих страницах пагинации описание будет отсутствовать.

Модуль оптимизации пагинации в категориях опенкарт

Для того, чтобы код опенкарт оставить в целостности и сохранности, мы написали простенький плагин (модуль) на основе OCMOD. Модуль представляет из себя код выше, оформленный в виде модификатора. Подобная практика считается хорошим тоном в программировании и позволяет в любой момент вернуть все на свои места. Для этого достаточно выключить данный модуль в админке опенкарт.

Внимание: Перед установкой рекомендуем проверить вашу версию опенкарт. Если вы используете платную тему, то модификатор может не сработать. В данном случае компания NeoAgency готова прийти к вам на помощь. Оставляйте заявку на сайте или звоните менеджеру.

Скачать модификатор: оптимизация пагинации в опенкарт.

 23.12.2018