Поиск Algolia для Discourse

||||
-|-|
:discourse2: | Краткое описание | Discourse Algolia Search интегрирует Algolia с поиском Discourse.
:hammer_and_wrench: | Ссылка на репозиторий | https://github.com/discourse/discourse-algolia
:open_book: | Руководство по установке | Как установить плагины в Discourse

Возможности

Недавно я создал плагин, который индексирует темы, сообщения, пользователей и теги с помощью Algolia и объединяет их в многокатегорийный поиск с автозавершением. Вот GIF, показывающий, как это работает:

Вы можете найти репозиторий Github с полной инструкцией по установке на github по адресу algolia/discourse-algolia.

Для настройки плагина требуется заполнить несколько полей. Задачи индексации помещаются в очередь заданий после сохранения объектов. Примечание: вам потребуется создать учетную запись Algolia, что бесплатно до 10 000 записей.

Настройка

:raising_hand_woman: Часто задаваемые вопросы

В: Заменяет ли это стандартный поиск Discourse?
О: Только если вы хотите, и пока только для автозаполнения в заголовке. Полная страница поиска все еще доступна при нажатии клавиши Enter без выбранного результата поиска или по ссылке “расширенный поиск” в нижнем колонтитуле автозаполнения. Я говорю “только если вы хотите”, потому что вы можете включить индексирование в Algolia, но не влиять на пользовательский интерфейс или существующий поиск Discourse каким-либо образом — именно поэтому в настройках плагина есть два флажка. Если вы используете только индексацию, вы можете искать данные в панели управления Algolia, чтобы увидеть, как это работает.

В: Нужно ли платить за использование плагина?
О: Это зависит от объема ваших данных. Если у вас менее 1000 сообщений, вы должны уложиться в бесплатный Community Plan Algolia, который предоставляет 10 000 записей. Хорошее правило: вам потребуется 10 записей Algolia на каждое сообщение, так как сообщения разбиваются на фрагменты размером с абзац для оптимальной релевантности и скорости. Однако результаты могут варьироваться. Если вы хотите использовать плагин, но обеспокоены стоимостью, просто отправьте мне электронное письмо, и я посмотрю, что мы можем сделать. Если вы являетесь проектом с открытым исходным кодом или некоммерческой организацией, вы можете иметь право на более высокие лимиты, просто заполните эту форму и упомяните Discourse.

ИСТОРИЯ ИЗМЕНЕНИЙ

2022.11.02

Опубликован PR

  • Обновлен algoliasearch.js до версии 4.14.2
  • Обновлен autocomplete.js до версии 1.7.1

2020.09.08

Опубликовано 8 коммитов в GitHub - discourse/discourse-algolia: A plugin for indexing and searching your Discourse with Algolia · GitHub

  • Должно быть исправлено сообщение, при котором поле поиска переставало работать после нескольких загрузок страниц. :warning: ПРИМЕЧАНИЕ: для работы плагина требуется самая последняя версия Discourse

  • Плагин теперь использует переменные scss Discourse и теперь будет корректно работать в темном режиме

  • Исправлена ошибка, при которой поиск пользователей приводил к /users вместо /u и вызывал ошибку 404. :warning: ПРИМЕЧАНИЕ: Вам потребуется повторно проиндексировать пользователей, чтобы это работало корректно rake algolia:reindex_users

  • Исправлена проблема выравнивания поля поиска

  • Применены различные стандарты кодирования

  • Удалена часть использования jquery

  • Поле поиска должно быть немного быстрее, так как теперь оно связано с рендерингом, а не с произвольной задержкой в 100 мс (также удалено запрещенное использование setTimeout)


ЗАДАЧИ

pr-welcome для следующих задач:

  • обновить algoliasearch (ruby)

Это обеспечит то, что мы не устареваем в будущем и позволит импортировать библиотеки вместо того, чтобы иметь их в глобальном пространстве имен.

61 лайк

Кажется, плагин автоматически переиндексирует. Может кто-нибудь сказать, как часто это происходит? Я не вижу никакой документации об этом.
спасибо

1 лайк

Если кто-то из сообщества не знает ответа, то ответ от команды Discourse по этому вопросу может прийти только на следующей неделе.

Я вижу, что плагин запускает задачу каждые 5 минут для обработки всех объектов (сообщений, тем, пользователей, тегов), ожидающих индексации: discourse-algolia/app/jobs/scheduled/update_indexes.rb at main · discourse/discourse-algolia · GitHub. Однако мне не совсем понятно, что может привести к повторной индексации объекта.

Если у вас будет возможность ответить, мне интересно узнать, что именно вы наблюдаете, что создает впечатление повторной индексации контента.

1 лайк

Привет, Саймон, спасибо за ответ! Я создал тестовый пост. У нас есть аккаунт Algolia. На следующий день я зашёл в админку Algolia и выполнил поиск этого поста — он отображался. Мне кажется, я проверял сразу после публикации и не увидел пост в Algolia. Но понимаю, что должна быть какая-то задержка при индексации. 5 минут — это было бы неплохо. Могу попробовать создать ещё один пост и подождать 10 минут, чтобы проверить, появится ли он. Меня удивляет, что в документации об этом ничего не сказано.

2 лайка

Я только начал тестировать этот плагин. У меня несколько вопросов:

  1. Когда я ищу по ключевому слову, Algolia показывает только разные абзацы из одной и той же темы, а не уникальные темы, как это делает Discourse. Если только эта тема не является окончательным ответом, такой подход кажется более ограничительным и неточным для конечных пользователей. Можно ли настроить это поведение?

  2. Плагин создает три индекса в приложении Algolia: по одному для каждого типа posts, tags и users. Как можно настроить этот плагин так, чтобы он включал другие индексы, доступные в моем приложении Algolia? Пример использования: поиск по нескольким сайтам через Algolia.

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

1 лайк

Привет!

Работает ли автодополнение поиска также на мобильных устройствах? Я не вижу, чтобы оно работало на форуме Algolia.

Привет,

Сообщество Algolia больше не доступно, они перешли на Discord.

Прощаемся с нашими форумами Discourse (и что будет дальше) - Блог Algolia | Algolia

Кроме того, дизайн UX изменился. Теперь он выглядит современнее. Есть ли планы обновить плагин?

И возможно ли переместить кнопки «Войти» и «Регистрация» в правый угол (по умолчанию), а строку поиска отцентрировать, как в компоненте темы «Поиск в заголовке»?
справа

2 лайка

На данный момент конкретных планов нет, так как этим плагином пользуются очень немногие клиенты.

3 лайка