Поисковый интерфейс
Поисковый интерфейс Друпал управляет механизмом глобального поиска по сайту.
Модули можно включать в систему поиска разных типов данных. Большую часть работы в системе поиска выполняет search.module, поэтому он должен быть разрешен для всех функций в работе поиска.
Есть три способа взаимодействия с системой поиска:
- Для поиска конкретно в нодах реализуется
nodeapi('update index')иnodeapi('search result'). Однако, необходимо учесть, что поисковая система уже индексирует весь видимый вывод ноды - все то, что отображается с помощьюhook_view()иhook_nodeapi('view'). Обычно этого достаточно. Этот механизм стоит использовать лишь если необходима индексация дополнительных скрытых данных. - Реализация
hook_search(). На странице/searchбудет создана вкладка поиска для разрабатываемого модуля, содержащая простую форму поиска по ключевому слову. Опционально можно реализоватьhook_search_item()для настройки отображения результатов. - Реализация
hook_update_index(). Это позволит использовать в модуле друпаловский механизм индексации HTML для эффективного полнотекстового поиска.
hook_search(). В этом случае нужно определить его, как локальную задачу (вкладку) на странице /search (например, /search/mymodule), чтобы пользователи легко смогли его найти.Функции
| Имя | Описание |
|---|---|
| do_search modules/search/search.module | Do a query on the full-text search index for a word or words. |
| hook_search developer/hooks/core.php | Определяет пользовательскую функцию поиска. |
| hook_update_index developer/hooks/core.php | Обновляет полнотекстовый индекс Друпала для данного модуля. |
| search_box modules/search/search.module | Конструктор формы; Выводит форму поиска в блок и в специальную область в текущей теме. Смотри alsosearch_box_form_submit() |
| search_box_form_submit modules/search/search.module | Обеспечивает отправку данных формы поиска. |
| search_data modules/search/search.module | Запускает стандартный поиск по заданным ключам и возвращает форматированный результат. |
| search_excerpt modules/search/search.module | Возвращает отрывки из части текста, с выделением найденных ключевых слов. Используется для форматирования результатов поиска.< |
| search_form modules/search/search.module | Выводит форму поиска. |
| search_index modules/search/search.module | Обновляет полнотекстовый поисковый индекс для указанного элемента. |
| template_preprocess_search_block_form modules/search/search.module | Обрабатывает переменные для search-block-form.tpl.php. |
| template_preprocess_search_theme_form modules/search/search.module | Process variables for search-theme-form.tpl.php. |
