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

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

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

<?
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 Предназначен для вывода формы ввода тегов.

Пользовательские комментарии

Пользовательские комментарии не являются официальной документацией. Ответственность за их использование несет сам пользователь.

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

Добавлять комментарии могут только зарегистрированные пользователи. Сообщения для просмотра появляются после модерации.
© «Битрикс», 2001-2017, «1C-Битрикс», 2017