Блог Сергея Арсентьева

Создание и продвижение сайтов с нуля.
Только реальные способы заработка в сети.
Проверено на личном опыте.

Вывод всех товаров Opencart 1.5 в родительской категории

По умолчанию Opencart не выводит товары в родительских категориях из подкатегорий, если это не указано явно при создании товара. Однако есть способ одним махом вывести все товары из подкатегорий.

вывод-в-родительскую-категорию-всех-товаров-opencart

Это удобно так как при добавлении товара в Opencart, которое мы рассмотрели ранее, не обязательно выбирать все-все подкатегории, где должен показываться товар. Достаточно выбрать одну самую первую (глубокую) подкатегорию, а в остальных — товары выведутся автоматически.

Пример

Допустим, у вас есть категория «Компьютеры», а внутри есть подкатегории «Ноутбуки», «Нетбуки» и «Планшеты». И вы хотите, чтобы товары из подкатегорий показывались в основной категории все разом.

Чтобы этого достичь, при традиционном способе вывода товаров, который применяется в Opencart, приходится в админке привязывать товар сразу к нескольким категориям. Вот так:

Отмечаем все товары в категории

Но если товаров много, то вручную это утомительно, а пользоваться Экспортом/Импортом или специальными модулями массового изменения товаров, сложно.

Гораздо проще задать для Опенкарта явное автоматическое выведение товаров из подкатегорий в родительские категории.

Вот как это делается:

1Открываем программные файлы Opencart по FTP по адресу: /catalog/controller/product/category.php (читать: «Как подключиться по FTP к сайту»).

2Находим строки:

$data = array(
'filter_category_id' => $category_id,
'filter_filter' => $filter,
'sort' => $sort,
'order' => $order,
'start' => ($page - 1) * $limit,
'limit' => $limit
);
.

и добавляем еще один параметр: 'filter_sub_category' => true, чтобы получилось как на скриншоте (кавычки поменяйте на прямые):

Выводим товары из подкатегорий Opencart

3Сохраняем файл category.php и перезагружаем страницу родительской категории Opencart.

У меня этот способ прекрасно работает на всех клиентских магазинах под Opencart (OcStore 1.5.x.x).

Кстати, можно его еще более упросить. Если у вас в магазине стоит Vqmod (в 99% магазинов на Opencart он установлен), то просто скачайте вот этот XML-файл и закиньте в папку /vqmod/xml

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

Бонус!

Прямо сейчас вы можете получить доступ к файлу XML — это просто и бесплатно. Достаточно кликнуть на любой значок соцсети, в которой вы, разумеется, имеете аккаунт, и вам откроется прямая ссылка на скачивание.

Важно!

Я не автор данного решения, поэтому не берусь ответить на вопросы, вроде: «А у меня не заработало, в чем причина?»

Сам использую весь этот код «как есть», протестировал его в своей панели управления — всё работает!

Поэтому если у вас по каким-то причинам не заработало данное решение, то вам остается попытаться разобраться самостоятельно или найти программиста, который установит его именно на ваш шаблон.

Советы

  • Проверьте версию CMS с той, что я привожу в статье, проверьте правильность всех путей, сделайте все внимательно, не торопясь.
  • Если сами не можете справиться с решением, то гуглите дальше или же найдите свободного программиста. Самые выгодные цены на фриланс-биржах. Но обязательно читайте как правильно искать программиста на бирже, чтобы не попасть на деньги.
  • Также можно заказать готовый магазин Opencart — здесь уже всё установлено и гарантированно работает.
Подробнее об авторе
“Измени свои привычки, и изменится твоя жизнь..”
Специалист по созданию и продвижению сайтов (SEO и реклама), фрилансер с многолетним опытом.
Статистика блога
  • Всего материалов на сайте: 177
  • Активных комментариев: 2 422
  • Работает онлайн: 4.8 года
  • Читателей за это время: 1 367 918

Было интересно - жми на звезды:



Комментарии на блоге
Комментариев | (24)
  • А как сделать вывод по под категориям в категориях, а не весь товар в общую кучу

    Комментировать
    • Немного не понял. Если в шаблоне предусмотрен вывод самих подкатегорий внутри категорий — то в них и будут лежать нужные товары. Скиньте линк на пример, если вы что-то другое имеете ввиду.

      Комментировать
  • Александр

    'filter_sub_category' => true уже есть в файле, но товары не отображаются.
    XML скачать не получается — иконок соц сетей нет, только ссылка на сам плагин.

    Комментировать
    • Возможно, у вас стоит какой-нибудь adblock или браузер не поддерживает плагин, пришлите вашу почту, я скину линк. Если у вас Opencart 1.5 и Vqmod то должно помочь. Ну а если нет, то ничего ведь не теряете.

      Комментировать
  • Александр

    Сейчас все заработало и скачалось без проблем.
    Установил плагин, все отлично отображается теперь в магазине. Спасибо)

    Комментировать
  • Игорь

    Работает в 2.0.3.1 Спасибо, очень удобно, гораздо меньше времени нужно тратить.

    Комментировать
  • Фильтры не отображаются даже если прописать эту строку

    Комментировать
  • Николай

    Здравствуйте!
    Почему нет прямой ссылки на скачивание файлу XML по теме Вывод всех товаров Opencart в родительской категории. По социальной кнопке кликнул. вы добавили меня в группу а ссылки нет. нехорошо как то получается. :no:

    Комментировать
    • Ссылка появляется автоматически после клика на значок соцсети.
      Не всегда соцсети срабатывают — бывают глючат.
      В этом случае можно попробовать кликнуть на другую соцсеть (замечено, что лучше всего работает Google+).

      Или вы можете просто подождать (там таймер считает обратное время), когда оно закончится, вместо замка появится прямая ссылка на скачивание.

      Если и после этого не появилась, оставьте свое сообщение с емейлом , я скину на почту.

      Комментировать
  • Edi

    Здравствуйте,
    не могу скачать xml файл, ссылки нету (
    высылайте пожалуйста на мой ящик.

    Комментировать
  • Денис

    Та же проблема. На соц сети нажал, но ссылки на xml-файл так и не обнаружил. Можно на мыло скинуть?

    Комментировать
    • Ссылка появляется автоматически после клика на значок соцсети.
      Не всегда соцсети срабатывают — бывают глючат сами API соцсетей, которые постоянно развиваются, бывают перегружены запросами и т.п.

      В этом случае можно попробовать кликнуть на другую соцсеть (замечено, что лучше всего работает Google+).

      Или вы можете банально оставить страницу в браузере, то есть подождать (там таймер считает обратное время), когда оно закончится, вместо замка появится прямая ссылка на скачивание.

      Если и после этого не появилась, то оставьте свое сообщение (обязательно со скрином ошибки), если у меня получится, я скину на почту.

      Комментировать
  • Надо вывести каталог подкатегорий в карточке товара что-бы посетитель не бегал туда и обратно?
    Вот вопрос так вопрос!!!

    Комментировать
  • Алексей

    Вывод товаров в родительской категории Работает )) Opencart 2.2.0.0 :yes:

    Комментировать
  • Константин

    Очень помогло, спасибо! :yes:

    Комментировать
  • Алекс

    Под 2.0.1 работает?

    Комментировать
  • Сергей

    Всем привет!
    подскажите плз как можно реализовать такое на opencart 2.3.0.2 как на этом примере http://headblade.zone/market/ ?
    т.е. выглядеть так и должно :
    категория1
    товар товар товар

    категория2
    товар товар товар
    товар товар товар

    Комментировать
    • мне кажется, что без серьезной переверстки и переделки шаблона не обойтись, тут двумя строчками кода отделаться не получится )

      поищите на бирже программиста (https://moytop.com/optimizaciya-raboty/otnoshenie/kak-pravilno-najti-i-nanyat-frilansera), вам сделают под ключ, опенкарт не дорогая система, средняя стоимость доработок 2-3 тыс. росс. рублей.

      Комментировать
  • Роман

    На OC 3.0.2 работает, после изменений обязательно обновить модификаторы

    Комментировать
  • Спасибо! Очень помог! :yes: :yes: :yes:
    Сильно раздражало, что не отображает по умолчанию..

    Комментировать
  • Дмитрий

    Здравствуйте!
    Такая проблема. При создании карточек товаров , все товары отображаются и в родительской и подкатегории товара, это очень для меня не удобно поскольку получается оооочень большой список товаров. Что сделать чтобы в родительской отображались не все товары, а допустим 2-4 товара.

    Комментировать
    • Здравствуйте.
      Вам как раз нужно использовать текущие настройки Opencart — в этом случае вы сами выбираете к каким рубрикам подвязать ваши товары. И в итоге вы можете вывести в подкатегории — все товары, а в родительской категории — только некоторые. Никакие изменения при этом в код Opencart вносить не нужно. Посмотрите видео https://www.youtube.com/watch?v=K0Meq1Ykocw

      Комментировать
  • Влад

    Спасибо, вы очень помогли!
    Подскажите пожалуйста, а как вывести фильтра в корневую категорию?

    Комментировать
Добавить свой комментарий
Подписка на бесплатные уроки
Подписаться!
Подробнее в Установки и настройки
Метатеги title и h1 в opencart
Добавляем в Opencart произвольный метатег Title + заголовок H1

По умолчанию в Opencart нет отдельно настраиваемого метатега Title и заголовка уровня H1. То есть туда автоматически включается название товара...

google maps opencart
Убираем карту из контактов Opencart

При установке шаблонной темы у вас в контактах почти наверняка будет болтаться карта от Google, которая показывает какое-то место в...

Закрыть