Discourse Algolia検索

||||
-|-|
:discourse2: | 概要 | Discourse Algolia Search は、Algolia を Discourse の検索機能に統合します。
:hammer_and_wrench: | リポジトリリンク | https://github.com/discourse/discourse-algolia
:open_book: | インストールガイド | Discourse でのプラグインのインストール方法

機能

私は最近、トピック、投稿、ユーザー、タグを Algolia でインデックス化し、それらをマルチカテゴリの自動補完検索に統合するプラグインを作成しました。以下はその動作を示す GIF です:

インストール手順を含む Github リポジトリは、algolia/discourse-algolia で確認できます。

プラグインの設定には、いくつかのフィールドに入力するだけです。オブジェクトが保存されると、インデックス化タスクはジョブキューに追加されます。注意:Algolia アカウントの作成 が必要です。10,000 件のレコードまでは無料です。

設定

:raising_hand_woman: よくある質問

Q: これはデフォルトの Discourse 検索を置き換えますか?
A: 望む場合のみ、かつ現時点ではヘッダーの自動補完機能のみです。検索結果が選択されていない状態で Enter キーを押すか、自動補完のフッターにある「詳細検索」リンクを使用することで、フル検索ページにアクセスできます。「望む場合のみ」と言ったのは、Algolia へのインデックス化を有効にしても、UI や既存の Discourse 検索に影響を与えないようにできるからです。そのため、プラグイン設定には2つのチェックボックスがあります。単にインデックス化を行うだけであれば、Algolia ダッシュボードでデータを検索し、どのように動作しているかを確認できます。

Q: プラグインを使用するには支払いが必要ですか?
A: 保持しているデータ量によります。1,000 件未満の投稿しかない場合、10,000 件のレコードを提供する Algolia の無料コミュニティプランに収まるはずです。目安としては、最適な関連性と速度のために投稿は段落サイズのチャンクに分割されるため、投稿1件あたり10件の Algolia レコードが必要になります。ただし、状況は異なります(YMMV)。プラグインを使用したいがコストが心配な場合は、メール をお送りいただければ、対応を検討いたします。 オープンソースプロジェクトまたは非営利団体の場合、より高い制限枠が適用される可能性がありますので、このフォーム に記入し、Discourse に関する言及をお願いします。

変更履歴

2022.11.02

PR をプッシュしました

  • algoliasearch.js を 4.14.2 に更新
  • autocomplete.js を 1.7.1 に更新

2020.09.08

GitHub - discourse/discourse-algolia: A plugin for indexing and searching your Discourse with Algolia · GitHub に8つのコミットをプッシュしました

  • 複数回のページ読み込み後に検索ボックスが機能しなくなるバグを修正するはずです。 :warning: 注意:プラグインは Discourse の最新バージョンが必要です

  • プラグインは現在 Discourse の scss 変数を使用しており、ダークモードでも正しく動作します

  • ユーザー検索が /users ではなく /u に遷移し、404 エラーを引き起こしていたバグを修正しました。 :warning: 注意:正しく動作させるには、ユーザーの再インデックス化が必要です rake algolia:reindex_users

  • 検索ボックスの整列問題を修正しました

  • 各種コーディング基準を適用しました

  • jQuery の使用を一部削除しました

  • 検索ボックスが若干高速化しました。これは、任意の100ms待機ではなくレンダリングに連携されたためです(禁止されている setTimeout の使用も削除しました)


今後の課題

以下のタスクについて pr-welcome とします:

  • algoliasearch (ruby) を更新

これにより、将来非推奨になることを防ぎ、グローバル名前空間に含めるのではなくライブラリをインポートできるようになります。

「いいね!」 61