Документация для разработчиков
Темная тема

Для разработчиков

Описание

Перед использованием модуля Поиск необходимо проверить установлен ли он и подключить его при помощи конструкции:

<?
if(CModule::IncludeModule("search"))
{
//здесь можно использовать функции модуля
}
?>

Работа модуля поиска сводится к предварительному индексированию и последующей выдаче информации сайте по запросу пользователя. Индексирование заключается в сохранении времени изменения, модуля-владельца, кода элемента, языка, web-адреса, заголовка, текста и двух произвольных параметров индексируемого элемента, а так же списка кодов групп пользователей, которые имеют доступ на чтение (как минимум) к данному элементу. Поиск заключается в выдаче списка результатов, удовлетворяющих введенной строке запроса (обрабатывается с учётом языка запросов), а так же набору установленных ограничений (модуль-владелец, код элемента, сайт, два произвольных параметра).

Алгоритм работы модуля поиска таков, что он не имеет никакой информации по характеру и структуре данных других модулей. При индексации модули по запросу сами отдают модулю поиска ту информацию, которую необходимо проиндексировать. Передача осуществляется в виде массива заданной структуры. Связь между модулем поиска и другими модулями системы осуществляется через систему сообщений.

Смотрите также:

Публичные функции и возвращаемые значения

ФункцияОписаниеС версии
stemmingВозвращает массив неизменных основ слов.6.5.0
stemming_defaultФункция морфологического анализа текста применяемая по умолчанию.6.5.0
stemming_stop_defaultФункция определения стоп слова применяемая по умолчанию.6.5.0
stemming_letter_defaultФункция возвращает алфавит по умолчанию.6.5.0
tags_prepareВозвращает массив тегов.6.5.0
InputTagsВозвращает код html для ввода тегов с поддержкой автодополнения.6.5.0

Классы модуля поиска

КлассОписаниеС версии
CSearchКласс для индексирования сайта и осуществления поиска по индексу.3.0.1
CSearchCustomRankКласс поддержки правил сортировки.4.1.2
CSiteMapКласс поддержки Google Sitemap.4.0.12
CSearchTagsКласс поддержки тегов.6.5.0

События модуля поиска

СобытиеОписаниеС версии
BeforeIndexВызывается перед индексацией элемента.5.1.0
OnSearchВызывается перед выполнением поисковых запросов.3.0.4
OnReIndexВызывается при построении поискового индекса.3.0.4
OnSearchGetFileContentВызывается по время переиндексации данных главного модуля.6.5.6
OnSearchGetURLВызывается при форматировании элемента в результатах поиска.4.0.0
OnSearchGetTagВызывается при разборе строки тегов.7.1.2
OnBeforeFullReindexClearВызывается в начале первого шага полной переиндексации, непосредственно перед удалением всех данных поискового индекса.8.0.4
OnBeforeIndexDeleteВызывается перед удалением части поискового индекса. 8.0.4
OnBeforeIndexUpdateВызывается перед обновлением поискового индекса. 8.0.4
OnAfterIndexAddВызывается после добавления новых данных в поисковый индекс. 8.0.4
OnSearchCheckPermissionsВызывается при построении поискового запроса.8.0.4

Компоненты 2.0

Компоненты модуля
Название Имя в пространстве имен bitrix Описание
Форма поиска search.form Служит для вывода формы поиска.
Стандартная страница поиска search.page Служит для создания страницы поиска.
Облако тегов search.tags.cloud Предназначен для вывода облака тегов.
Форма ввода тегов search.tags.input Предназначен для вывода формы ввода тегов.
Поиск по заголовкам search.title Предназначен для вывода поля поиска по заголовкам.
Поле ввода поискового запроса search.suggest.input Cлужит для вывода поля ввода поискового запроса с подсказкой.


© «Битрикс», 2001-2024, «1С-Битрикс», 2024