Здравствуйте! Собственно, вся суть вопроса в заголовке. Нужно сделать так, чтобы те категории, в которых нет товаров - не отображались. Буду рад любым ответам...
Единственный нормальный вариант без кучи костылей - это пройтись по таблице product_to_category, собрать id категорий, где есть товары, а потом пройтись по таблице category и выставить у этих категорий status 0. Это можно делать, например, по крону. Вариант посложнее: сделать вышеописанное один раз для отключение категорий, которые уже без товаров и добавить в модели в функции добавления и удаления товаров включение категории при добавлении товара и проверку на остаток товаров в категории (и выключение, если их нет) при удалении товаров. Если используется модуль импорта, то и для него тоже такое сделать в его модели, если у него собственная.
Dotrox, хотелось бы найти способ попроще, нежели копаться в базах данных. К тому же, насколько я понял, Ваш способ описывает то, как навсегда скрыть категории, в которых нет товаров. Мне же нужно, чтобы категория не отображалась временно, пока в нее не будет добавлена товарная позиция.
Нет, я просто его не расписывал. надо первым запросом к таблице category выставить везде status 1, а затем пройтись по списку полученному из таблицы product_to_category и отключить пустые в данный момент. Простого способа нет. Альтернативный способ это везде, где есть вывод ссылок на категорию, проверять количество товаров в ней и скрывать, если там 0. Но этот способ потребует больше работы + создаст существенную нагрузку на базу (тормоза при открытии сайта будут заметны невооруженным глазом, если на сайте много товаров).
Dotrox, при создании новых категорий, получается, надо будет проделывать еще раз эту процедуру? Zulus, не подскажите ресурсы, на которых возможно найти этот модуль?
Надо просто добавлять новые категории выключенными и включать одним из двух описанных способов. А модуль этот, вероятно, работает как раз по принципу описанному мной во втором варианте, то есть, из-за него будут существенные тормоза, если много товаров.
Не встречал, где есть в свободном доступе. Видел на складчике хотели его приобретать, но так у меня не было в нем необходимости, то дальше следить не стал.
подниму темку тоже надо автоматом скрывать пустующие категории есть VQMOD http://forum.opencart.com/viewtopic.php?f=131&t=38140 но после его установки вместо сайта белый экран (админка нормально) версия OC 15512
Делаем это: https://wmasteru.org/threads/Настройки-оптимизации-фичи-статьи-для-opencart.2219/page-7#post-151032 А затем смотрим Журнал ошибок.
вот такая ошибочка Unknown: syntax error, unexpected '=>' (T_DOUBLE_ARROW) in /home/skazkakl/igratoycom/vqmod/vqcache/vq2-catalog_controller_common_header.php on line 254 содержимое файла
Вообще. ошибка указывает на то, что где в объявлении массива перед этой строкой что-то пропущено (какая-нибудь закрывающая скобка, запятая и т.д.), но здесь строка 254 пустая, стрелка есть на 255, а предыдущая не пустая строка 252, но там, вроде, всё на месте. Либо здесь код при выкладке сбился больше, чем на строку и ошибка где-то совсем в другом месте, а не там, где сейчас строка 254 в этом коде. И код нужно оборачивать в тег кода (не забывая про соответствующий выбор языка), иначе у него разметка совсем теряется!