Вывод дочерних категорий в фильтре

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

Заходя в категорию "Овощи и фрукты" в фильтрах (на изображении справа) должна быть фильтрация по дочерним категориям 

1 ответ

  • 2
    replicant 16 апреля 2020 12:16 #

    Технически можно заменить раздел Подкатегории фильтра аналогичной по смыслу характеристикой типа text select или text checkbox, в зависимости от кол-ва подкатегорий в которых может быть размещен фильтруемый товар.

    Выглядеть будет так же. Работать будет. Код менять не придется. Плагины ставить не придется.

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

    • +1
      Валерий Валерий 16 апреля 2020 14:48 #

      Да, спасибо! Именно так сейчас и делаем... Товары теперь в нескольких категориях будут пересекаться, видимо придется на чекбоксы переделать. Спасибо.

    • +1
      Vaslav Vaslav 16 апреля 2020 16:19 #

      Интересное решение. Казалось бы зачем так делать? Вот пример: у меня настроены seo-фильтры, в каждой подкатегории при выборе характеристик в фильтре попадаешь в "специальную категорию" - как бы в "свою среду" (некий набор товаров, ограниченный твоим выбором), но проблема в дочерних категориях! Если у текущей подкатегории есть еще дочерние подкатегории, то при попадании в категорию seo-фильтра, эти ссылки на дочерние подкатегории никуда не деваются. В результате, при клике на них, из "своей среды" вылетаешь обратно в общий каталог, т.к. все выбранные фильтры слетают. В случае описанной выше реализации - подкатегории в виде характеристик - ссылки на дочерние категории можно совсем скрыть. Тогда, если выбраны нужные характеристики и находишся в seo-категории, выбор подкатегории (среди прочих параметров в фильтре) перекинет не в просто эту подкатегорию, а в неё же со всеми выбранными ранее характеристиками!

      Вероятно, фильтр усложнится... не в любой ситуации применимо. Но попробовать можно.

      • +1
        replicant replicant 16 апреля 2020 17:18 #

        У такого решения есть и плюсы и минусы (применяю его на ряде проектов дозированно при необходимости), поэтому надо смотреть по месту. Неудобные подкатегории можно скрыть, оставив их доступными посетителям как параметры фильтра и сохранив объемность статического дерева категорий с ветвлениями. По прямой ссылке категории будут доступны как обычно. Роботы их будут посещать и индексировать. Люди же будут работать только с основной категорией и фильтрами в ней, оставляя там все свои клики. Ну и в хлебных крошках у товара по пути следования может показываться подкатегория, если выбрана родительская именно как подкатегория, а не как основная. Тут открывается поле для творчества.

        Товар надо транслировать в родительскую напрямую размещением в "Овощи и фрукты", а уже потом в "Овощи". Тогда подкатегория - будет работать в фоновом режиме как СЕО-элемент сайта, но люди в неё из навигации сайта по ссылкам не пойдут, оставаясь выше. Дерево ветвлений визуально уменьшается и выглядит более плотно, т.к. есть фильтры, разбирающие ветки. Растекание посетителей по дереву будет меньше, если правильно запилить все исключения в robots.txt, посадив все посещения на основную категорию, где работает фильтр, каким-нибудь Clean-param. Нагрузку на фильтрацию уже сами прикидывайте т.к. она выше, чем простой серфинг по статическим категориям.

        Как себя поведет экспорт и построение дерева в том же Яндекс-турбо, где приоритетно Один товар = Одна категория, чтобы сохранить правильные ветвления, не знаю, но у меня все красиво там строится автоматом. Ровно один в один как на сайте.

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

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите