Вопрос. У меня есть гипотетический интернет-магазин в вакууме с большим количеством разных товаров. В зависимости от типа товара, должны показываться разные наборы фасеток. Более того - их много. Под каждый тип товара мне приходится прописывать несколько десятков уникальных полей и около 5 словарей терминов, по которым я потом поиск фасетный организовываю. Нерационально, нелогично, и вообще меня саму это бесит, но иначе не выходит.
Так вот. Как мне заткнуть фасетки в конкретные разделы каталога? При чем, что самое интересное - не поисковика по каталогу, где и только где они отображаются, но именно каталога.
(В настройках блока пробовала указывать страницы отображения - не сработало).
Разные фасетные фильтры на разные категории товаров
Главные вкладки
Лучший ответ
Гы, решение оказалось таким простым...*фейспалм* Включить аякс по вьюхе
Комментарии
Вообще то они сами втыкаются только туда, где есть соответствующее совпадение на странице. Несколько десятков уникальных полей это убийство сайта, что бы это работало, надо генерировать фасеты через виртуальное поле.
http://xandeadx.ru/blog/drupal/695
Хорошая статья для общего развития.
Поля предпочтительно термические, если пользуете фасеты, то от их настроек и привязки не уйти, можно делать кастомный каталог с зависимыми фильтрами, тогда их не надо будет настраивать, но это уже "другая песня" и за другие деньги ...
Они втыкаются только туда, где поиск. При чем по всем критериям сразу. А если я хочу, чтобы одна категория товаров видела одну фасетку, а другая - другую? Они все вместе вылезают...
Да, видела, спасибо, мне эта статья еще вначале помогла.
Если под "термическими" Вы подразумеваете таксономию, то да, именно так и есть. А насчет "кастомного каталога с зависимыми фильтрами" - можно немного поточнее? Что конкретно имеется в виду?
При входе в каталог любого уважающего себя интернет-магазина ты сразу же видишь фасетки, еще не начав поиск. При чем они зависят от типа товара (иначе кто станет искать смеситель для ванны по характеристикам наушников?))
Если у вас в смесителях видны характеристики наушников, то у вас не фасеты, а обычные раскрытые фильтры views.
это противоречит здравому смыслу, вот пример уважающего себя магазина, там фильтры появляются только в конечной категории
https://market.yandex.ru/catalog/54440?hid=198119&track=menu
да вы и сами себя опровергаете
" кто станет искать смеситель для ванны по характеристикам наушников?"
еще раз повторюсь, фасеты показываются на тех страницах каталога, где есть ноды, соответствующие фасету
и еще раз повторю, реальное поле под каждый фильтр, сайту триндец
>реальное поле под каждый фильтр, сайту триндец
Да ну не обязательно. Многое зависит от настройки сервера.
Знаю магаз, полей-фасетов под 70 штук, посещалка около 400 уников - всё работает, даже летает, на не суперкрутой впске. На шареде может и лёг бы конечно.
ну это только радует, что друпал при 70 джоинах не кладет сервер при каждом запросе
но все же лучше так не делать
У меня сейчас просто страничка поиска, на которой фасеты работают. И несколько страниц каталога, на которой они не работают. Вот я и спрашиваю - как сделать так, чтоб работало.
Хорошо, окей, конечная страница каталога, пусть конечная, но фасеты просто не открываются на страницах каталога, я вот о чем и говорю!
На страничках каталога выводите вьюху по поисковому индексу, тогда фасеты появятся на ней (естественно, что сами фасетные блоки также необходимо вытащить из региона "отключено" )
Глобально я поняла, спасибо. Но была бы чрезвычайно благодарна за более подробный алгоритм вывода вьюхи в каталог, организованный у меня вьюхой по таксономическим категориям. Я еще юн и зелен, так что не совсем понимаю, как это сделать.
"Глобально я поняла" "Я еще юн и зелен" как то мозг раздваивается.....
вот алгоритм создания каталога https://drupalfly.ru/lesson/create_catalog_drupal7_2
последнюю вьюху надо делать на основе поискового индекса
http://mailfox.ru/blog/facet-api-ili-fasetnyy-poisk-v-drupal.html я вот по этой статье учился
Спасибо за статью. У меня было реализовано немного иначе - первая вьюха так же по родительским терминам, а внутри нее дочерняя вьюха-блок с выводом по дочерним терминам. Попробую этот вариант, спасибо.
Кстати, по поводу "мозг раздваивается" - понимаете ли, я с Друпалом разбираюсь всего три недели, поэтому могу понять определенные концепции, а как их реализовать - понимаю не всегда. Так же, как любая программа начинается с алгоритма, а потом уже реализуется посредством того или иного языка, мне важно сначала понять ЧТО надо сделать, а потом - КАК))) Так что не пинайте строго - я не волшебник, я только учусь
В общем, спасибо, ребят, буду разбираться)
Супер, у меня все вышло. Сделала внутреннюю вьюху, показывающую товар в подкатегориях, по поисковому индексу, и фасеты появляются именно там, где и должны. Королева в восхищении
Только теперь возник другой вопрос. При попытке сортировать товары с помощью вьюшной раскрытой сортировки, она перенаправляет ULR на /?sort_by=....., и оно перекидывает на главную страницу. Если в настройках вьюхи привязать отображение к пользовательскому URL и прописать вручную адрес страницы отображения товара (а у меня три степени глубины каталога, так что это /catalog/oborudovanie-4-pokoleniya/komplekty-4-pokoleniya/4-cilindra то все сортируется наотлично. Но мне ж нужно, чтоб эта вьюха мне с каждой подкатегорией так работала, везде сортировала. Попыталась прописывать taxonomy/term/%1/ и другие варианты, но не выходит. Каков правильный синтаксис??
https://www.drupal.org/project/search_api_sorts специально для сортировки по индексу. Настраивается не во вьюхе, а там же где индекс.
Поставила, настроила, не моё. Мне нужна открытая форма сортировки для пользователей. Этот модуль предполагает организованную сортировку изнутри. Это и вьюхой можно, чего мудрить. Сортировочный блок активировала, но он даже не отобразился =_="
https://prnt.sc/gyz4xd
https://prnt.sc/gyz3tx
блок называется Search sorts
У вас эта фигня работает? У меня не получилось ее использовать, сортирует только то что отмечено как default, все остальные поля игнорирует
Прямо сейчас работает, по обоим сортировкам в обе стороны.
У меня не работает. Блок не отображается. Вообще.
Ребят, ну неужели ни у кого больше нет идей? Мне нужно, всего лишь, прописать сортировку так, чтобы оно оставалось на той же странице, а не выкидывало на главную...
Гы, решение оказалось таким простым...*фейспалм* Включить аякс по вьюхе