Ребята помогите, гугл не помог), хотя задача вроде как распространенная.
Для примера возьмем booking.com
Вводим слово "кие", и видим подсказки(скриншот1) 5 штук
-- термин1-словарь1 (количество нод)
-- термин1-словарь2 (количество нод)
-- термин2-словарь1 (количество нод)
-- нода1
-- нода2
если выбрать одну из подсказок, переходи на страницу термина или ноды
если нажать просто найти - скриншот2
Что скажете, как реализовать?
Вложение | Размер |
---|---|
untitled-1.gif | 23 КБ |
untitled-2.gif | 48.81 КБ |
Комментарии
https://www.drupal.org/project/finder
Хорошо, я так понимаю он использует Views
А как в представление вывести две разные сущности?
термины таксономии + ноды
в примере на букинге если сравнивать с друпалом, то есть ноды разных типов - географические объекты(города,регионы, ориентиры) и есть конкретные объекты-отели, которые привязаны к городам, регионам, ориетирам возможно entity reference связью и в поиске соответственно выводится список географических объектов и количество отелей, связанных с данным объектом
вот и получается вьюха с нодами, связью по референс полю и аггрегация
или же географические объекты являются терминами и связаны с отелями соответственно terme reference, тогда вьюха выводит термины, связь с нодами и та же аггрегация
Да, если работать как в первом варианте тогда все понятно.
Но меня интересует второй вариант
Получается нужен групповой поиск по полю "term:title" or "node:title"
И вывод терминов и нод одной вюхой
для такого изначально нужно search_api, search_api_solr, search_api_multi, но опять таки на том же букинге все проще реализовано, приведите конкретный пример того что нужно именно вам и может окажется, что вы изобретаете не тот велосипед
Задача стоит сделать поиск проще.
Есть Тип материалов "справка"
Есть Словарь "категории"
Есть Словарь "ключевые слова"
Есть Словарь "улица"
Нужна форма с одним поле ввода.
человек например вводит "ресторан", ему должно предложить такие варианты
"справка" - Ресторан Космос
"категории" - Рестораны
"ключевые слова" - Китайские рестораны
"улица" - улица Ресторанная