Есть словари Тип и Бренд.
Поставил Search API + Facet API. Сделал ими на views страницу с фасетами (все работает):
А как эти модули использовать если на странице бренда нужен выбор типа?
При этом страница бренда должна иметь урл sitename.com/brand
Предварительное решение.
Во вьюхе, которой выводяться результаты поиска поставить контекстный фильтр Найти: Indexed taxonomy term fields
И прописать путь страницы вьюхи taxonomy/term/%
Недостаток:
При выборе одного пункта (бренда) из фасетного фильтра исчезают остальные пункты (рис). Как это побороть?
Еще вопрос: а как на странице ноды фасеты вывести?
Вложение | Размер |
---|---|
![]() | 22.17 КБ |
![]() | 14.19 КБ |
![]() | 10.7 КБ |
Комментарии
Нужно чтобы в настройках у фасета был выставлен оператор OR, см. рис.
Да, оператор OR, насколько я помню не для всех поисковых механизмов реализован, для Spinx точно помню что реализовано.
Sandy Big Boy, or там везде поставлено.
Т.е. если я перешел на страницу термина Casio:
могу выбрать тип Кварцевые + механические + электронные в любых комбинациях.
не могу выбрать бренд Casio + Rado + Zenith
Если перйти на страницу типа Механические - там все наоборот
На страницу термина я перехожу т.к. у меня вьюха через аргумент термин таксономии выводится.
А, понял. Я то через панельки все делаю.
Хорошо, а если по другому. Есть вьюха от поискового индекса без контекстных фильтров вот такая:
![](http://www.drupal.ru/files/faxetisearch4.gif)
Все прекрасно работает, все фильтры друг с другом дружат.
А как фасетные блоки расположить:
1) на странице термина
2) на странице ноды
?
Сейчас фасетные блоки только на странице вьюхе (/front)
я понимаю что рецепт тут https://www.drupal.org/node/2017007но пока не могу вкурить что там пишут
Разобрался с https://www.drupal.org/node/2017007. Оказывается надо создать во вьюхе дисплей Facets block и поставить его ПЕРЕД блоками-фильтрами. Я ставил после а не до потому и не работало.
Теперь проблема: на терминах таксономии и нодах блоки с фильтрами есть.
Но они начинают фильтровть с адреса ноды.
Т.е. я на странице ноды делю фильтр он формрует ссылку node/398/field_katalogilink/casio-200
А надо front/field_katalogilink/casio-200
Вообще есть модуль Facet API Pretty Paths, может быть он как-то поможет решить проблему.
Собственно именно благодаря ему ссылки такового вида![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
А как вы сделали на панелях. Можете сайт показать?
Я могу рушить свою задачу. Но к вьюхе генерируемой search api придется приявзать модули выборки по таксономии + выводить найденную ноду AJAX-ом.
Но люди на drupal.org просто на search api как-то умудряются фасеты делать и переходить на них с любой страницы сайта.
У меня нет фасетов по термину таксономии, поэтому конкретно этот случай я показать не могу. Говоря о панелях я имел ввиду, что с помощью Page manager можно переопределять вывод и нод и страниц терминов таксономии, в том числе вставляя блоки фасетов куда нам нужно.