Поиск¶
Поиск доступен по адресу {forum}/search и охватывает все опубликованные сообщения. Он всегда ограничен правами посетителя на категории, поэтому гость никогда не увидит результат из категории только для сотрудников, а участник — из категории, которую не может читать.
Фильтры¶
Форма поиска поддерживает:
- Ключевые слова
- Автор
- Один раздел (категорию)
- Только темы — поиск по первым сообщениям без ответов
Карточки результатов¶
Результаты отображаются в виде карточек, похожих на сообщения, а не списка ссылок: аватар автора, отображаемое имя и значки групп, дата, отметка о решении у принятых ответов и подсвеченный фрагмент совпадения в контексте. Смысл в том, чтобы посетитель часто мог получить ответ прямо на странице результатов, ничего не открывая.
Движки¶
builtin¶
Ничего настраивать не нужно. Forum Pro использует полнотекстовые возможности вашей базы данных:
| Движок | Механизм |
|---|---|
| SQLite | FTS5 |
| MySQL / MariaDB | индексы FULLTEXT |
| PostgreSQL | tsvector |
Индекс поддерживает себя сам при создании, изменении и удалении контента.
yetisearch¶
Передаёт индексацию плагину YetiSearch Pro, который добавляет нечёткое совпадение (поэтому сообщение находится даже с опечаткой) и настроенную релевантность.
Если задан engine: yetisearch, а плагин не установлен, Forum Pro возвращается к builtin, а не завершается с ошибкой. Поэтому переключать движки безопасно.
Перестроение индекса¶
После большого импорта, смены движка или любой операции, записавшей данные в базу в обход обычного пути, перестройте индекс:
Команда удаляет и заново заполняет поисковый индекс из таблицы сообщений. Её безопасно запускать на работающем форуме; результаты поиска просто будут неполными, пока она выполняется.
Повторный рендеринг сохранённых сообщений¶
Поиск индексирует отрендеренный текст сообщений, поэтому изменение цепочки обработки текста (новая версия codesh, настройка Markdown, исправление отображения упоминаний, плагин, слушающий onForumProRenderBody) может рассинхронизировать индекс и отображение. Сначала выполните повторный рендеринг, затем перестройте индекс:
Поиск и комментарии к статьям¶
Комментарии к статьям — обычные сообщения форума, поэтому они индексируются и ищутся вместе со всем остальным. Читатель, ищущий по форуму, находит и подходящие комментарии к записям блога.
Что не индексируется¶
- Неопубликованный контент: всё, что ожидает одобрения, находится в очереди спама, скрыто или мягко удалено
- Личные сообщения, которые никогда не доступны для поиска за пределами беседы
- Категории, которые посетитель не может читать