вівторок, 12 липня 2016 р.

Как вывести все товары на отдельную страницу в OpenCart — модуль Complete Product List / All Products

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


Модуль «Complete Product List / All Products» создаст специальную страницу со всеми товарами, аналогично странице «Акции» (ссылка на страницу с акциями обычно присутствует в футере). Модуль совместим с версиями 1.5.1.3 — 2.0.3.1. В файлах модуля есть xml файл, а это значит, что используется vqmod. Для версий 1.5.x это совершенно не проблема, так как редко какой магазин на 1.5.х не использует vqmod, а вот с opencart 2.x дело обстоит несколько иначе, так как в двойке вместо vqmod используется ocmod. Конечно, некоторые упорно продолжают использовать vqmod, но это уже дело индивидуальное, поэтому код из xml файла необходимо вручную перенести в те файлы, которые указаны в данном файле, но об этом чуть позже.

Установка и настройка модуля
1. Скачиваем модуль «Complete Product List / All Products».
2. По ftp заливаем в магазин содержимое той папки, которая соответствует используемой нами версии (в архиве есть две папки — 1.5х и 2.х). Для 1.5.x необходимо загружать обе папки, если же используется версия 2.х и не используется vqmod, то загружаем только папку catalog.
3. Этот пункт только для владельцев магазинов версии 2.х, в которых не используется vqmod.
Открываем файл vqmod/xml/all_products.xml и переносим ее содержимое в нужные файлы магазина, а именно:
— открываем файл catalog/controller/common/footer.php и находим строку

перед ней добавляем новую строку


В этом же файле, чуть ниже, находим строку

и снова перед ней добавляем строку с кодом


-теперь открываем языковой файл catalog/language/english/common/footer.php и перед строкой с $_[‘text_special’] размещаем строку с названием новой страницы

Где «All Products» можно заменить на любое подходящее для Вашего магазина значение: «Каталог товаров», «Категории товаров», просто «Категории» или «Каталог» и т. д.


— открываем файл catalog/view/theme/*/template/common/footer.tpl и перед строкой с акциями

размещаем строку вывода ссылки на новую страницу в футер


4. Заходим в магазин и видим, что в футере появилась нужная нам ссылка.

Переходим по ней и удостоверяемся, что все работает как положено: страница носит придуманное нами название и на ней отображаются все товары.


5. На этом, в принципе, и все — модуль работает, страница есть. Но есть еще один необязательный, но полезный нюанс — добавление схемы или макета. Для чего это нужно? Например, захотим мы в нашем каталоге товаров, в боковой колонке, вывести модуль категорий или еще какой-нибудь модуль, информацию, а сделать это, не имея макета, невозможно.
Итак, идем в админку — Система — Дизайн — Макеты и добавляем новый макет. В поле «Название макета» вводим то название, которые мы присвоили странице в языковом файле ранее. В поле «Путь» вписываем — product/allproducts и сохраняем внесенные изменения. Теперь  появился новый макет «Каталог товаров», в котором можно размещать всевозможные модули.

С модулем «Complete Product List / All Products» отпадает надобность создавать одну глобальную категорию, делать ее родительской для всех лишь для того, чтобы в одном месте, на одной странице, собрать все товары. Устанавливаем модуль и получаем отдельную страницу со всеми товарами, которые есть в магазине.

Немає коментарів:

Дописати коментар