Здравствуйте, подскажите, почему когда продавец выбирает ПОДкатегорию товара, не подтягиваются категории товара(главные). Стоит например в подкатегории 4 товара, а в категории 0.
При этом, на витрине всё показывается верно и товар есть везде. Всё бы ничего. Но, с модулем скрытие “категорий без товаров”, получается нет главных категории на витрине, они не открываются потому что в админке в категориях 0! Модуль мотивации поиска сканирует сайт, видит что товары есть в этой категории, но не может их найти, грузит сервер и т.д.
Подскажите, может это где-то надо настроить или это стандартная практика? Или быстрее будет самой функцию написать? Просто это я что-то не включила или это базовый такой функционал?
судя по этому - выставлена настройка.
Тогда надо обращаться к этому модулю или ке его разработчику: В базе по каждой категории считается именно сколько товаров фактически привязано к этой категории. Никак иначе и это правильно. Но такой модуль при расчете скрывать или нет категорию, помимо условия: значение поля amount в таблице категорий, должен еще смотреть, есть ли у этой категории ветви, в которых хотя бы одна категория активна, и у нее поле amount положительно. НО!!! Мало того, надо также в этом случае вытащить все товары для этой категории и учесть только активные, то есть: есть ли у этой категории ветви, в которых хотя бы одна категория активна, и у нее поле из товаров в поле amount хотя бы один товар активен.
Это на самом деле не так просто и довольно ресурсозатратно. Но все же реализуемо.
Добавил продавец платье. И выбрал подкатегорию платья. Но не выбрал “одежда для женщин” и “одежда и обувь”. В циферках это будет выглядеть так: одежда и обувь 0, одежда для женщин 0. платья 1. т.е. автоматически это отобразится (из-за галочки в админке в разделе общее) только на витрине. В админке останется 0 товаров в главной категории.
вот нашла сейчас. У меня крон ищет. Товары без категорий (модуль от cs cart) он скрывает как раз с витрины те категории в которых нет товаров (это удобно). Но, получается он скрывает и главные категории.
И я вот думаю что в таком случае делать. Писать функцию, чтобы товары из подкатегорий автоматически отмечались и как файлы категорий. Или это надо в модуле как-то править. Потому что крон этого задания, если будет такая ошибка как у меня сейчас, нагружает сервер под 75%.
Еще раз. У вас работает, как я понял, так: если в категории 0 товаров - она скрывается. Не знаю, какой там модуль, но это два запроса к БД:
UPDATE cscart_categories SET status = 'H' WHERE product_count = 0;
UPDATE cscart_categories SET status = 'A' WHERE product_count > 0;
Должно быть так:
берем категорию, и чтобы понять, надо ее скрывать или нет - выбираем рекурсивной функцией все ее подкатегории. у каждой категории из списка, если товаров у нее больше 0, получаем количество активных товаров. Если есть хоть один активный - не скрываем.
И так дальше.
Ну мне кажется это из раздела фантастики… учитывать виртуальные категории… учитывать сео страницы для фильтров… учитывать…
я как-то хотел для себя такой модуль написать, но потом понял какая морока, и плюнул. и это без виртуальных категорий и фильтров.
Ну вот и я забыли на это, хотя ТП вроде как сказала все работает нормально, может проблема была в моей установке, по итогу он работал не так как нужно было мне (правильно) то есть в боковом меню этой категории нет, а вверхнем что выводились для меню АВ есть, на тот момент вы знаете у меня было 4к+ категорий и нужно было вручную выключать их из меню, потому что выдавали 404, а там каждый день товары то добавлялись то выключались то скрывались и нужно было их в ручную выключать а все не отследишь, я сказал не надо! Я буду вручную включать и выключать когда нужно так я буду знать что да как.
Этот момент не проверял если честно, я остановился на том что скрывает там а там нет, тут я его и забросил, даже не углублялся на сторону вендора. Вот он так и стоит у меня, кстати они 3-4 фикса мне его давали, и все равно )
Когда продавец добавляет товар он виден на витрине, но не в категории (которую он не выбрал, он выбрал же только подкатегорию), потому что она скрывается модулем.
И вот приходит яндекс. Видит новый товар. А к какой вложенности он относится? Проверяет и видит что категории такой нет на сайте (она скрыта модулем) и он такой не понял… Запускает цикл пока либо php не упадет, либо по таймауту не отключится. Потому что категория скрыта, а товар в ней есть.