Процветай и здравствуй, дорогое сообщество.
С друпалом знаком, можно сказать, поверхностно.
Предо мно сейчас стоит следующая задача:
необходимо реализовать форму поиска (продвинутого).
Нужно, чтобы поле, в которое вводить ключевую фразу для поиска, было не обязательным для ввода.
Следующее. Есть несколько словарей таксономии.
Один словарь - регион (Азия, Европа, Африка) и второй - страны (Алжир, Афганистан, Индия и т.д.).
Нужно чтобы в форме поиска присутствовал select с возможностью выбрать несколько вариантов со следующей логикой поиска:
Выбираем Африку - в результатах видим все страны, которые находятся на континенте Африка.
Ищем Египет - видим и те ноды, которые находятся в термине "Африка"...
Аналогично еще с 5-ю словарями, существующими на сайте.
Сломал мозг, перепробовал Faceted search, Views с exposed фильтрами и еще не помню какие модули, но вобщем вот...
Есть у кого-то решение для этого? Или же мне придется писать standalone-поиск вообще вне друпала по используемой БД?
Подскажите кто чем может, пожалуйста.
Спасибо заранее...
Комментарии
У вас неправильно построена таксономия, отсюда и проблемы. Я бы сделал страны дочерними терминами регионов.
Поиск не нужен, понадобятся только ссылки на термины (можно сделать дропдаун меню с помощью jump).
> Выбираем Африку - в результатах видим все страны, которые находятся на континенте Африка.
Делается одним модулем taxonomy_context или своим кодом (я добавляю в template.php новую переменную со списком дочерних терминов в preprocess_page и вывожу ее в page.tpl.php)
> Ищем Египет - видим и те ноды, которые находятся в термине "Африка"...
Подходящего готового модуля не знаю, возможно, это реализуется через Views (не сталкивался с такой задачей). На крайний случай можно хакнуть taxonomy_term_page().
Спасибо, буду пытаться, пробовать.