Поиск

Как MySQL, так и PostgreSQL имеют встроенные возможности полнотекстового поиска. Хотя можно очень просто использовать эти специфичные для баз данных решения для создания поисковой машины, вы при этом жертвуете управлением механизмом поиска и теряете способность настроить систему согласно поведению вашего приложения,
То, что база данных рассматривает как слово с высоким рангом, приложение могло бы фактически считать "шумом", если бы оно имело свое мнение.
Сообщество Drupal решило создать заказной механизм поиска, чтобы реализовать специфичную для Drupal индексацию и алгоритмы ранжирования страниц. Теперь появилась поисковая машина, которая ведет себя так же, как и остальная часть структуры Drupal, имея стандартизированную конфигурацию и единый пользовательский интерфейс независимо от того, какая конечная база данных используется.
В этой главе мы обсуждаем следующие вопросы: как модули могут взаимодействовать с API поиска и как можно создать заказные формы поиска. Мы также рассмотрим, как Drupal анализирует и индексирует содержимое, как вы можете вмешаться в работу индексатора.

Drupal позволяет искать узлы и имена пользователей вне области (box). Даже когда вы разрабатываете ваши собственные заказные типы узлов, система поиска Drupal индексирует содержимое, которое представляется при просмотре узла. Предположим, например, что вы имеете тип узла recipe (рецепт) с полями ingredient» (ингредиенты) и instruction» (инструкции) и создаете новый узел recipe с идентификатором 22. Пока эти поля просматриваютс анонимным пользователем, когда он посещает httpi//exemple.com/7q-node/22. модуль поиска индексирует Узел recipe, и его дополнительные метаданные иоеещлкнсн и следующий раз "ttp: //example. com/cron. php, обычно через демон cron.