LoginSignup
1
0

More than 1 year has passed since last update.

[WordPress] サイト内検索に Algolia を使う時に最初に設定しておくこと

Last updated at Posted at 2022-10-26

要件

サイトは WordPress で作成。
サイト内検索に Algolia を利用。

本記事では WordPress と Algolia の連携し利用できるようにするまでの手順を記載。

Algoliaのアカウント/APIキーを取得

また、開発用/本番用とでAlgoliaのアプリケーションは分離しておく。
アカウント取得時は無料でよいが、無料枠の場合は検索回数の上限やチームユーザーの制限があるため、本番環境用で利用する場合は素直に支払い情報を登録しておきましょう。

APIキーは

  • Application ID
  • Search-Only API Key
  • Write API Key(旧名称 Admin API key)

を控えておく。

WordPressでプラグインのセットアップ

WP Search with Algoliaをインストール

1. APIキーの設定

Algolia search→SettingsでAPIキーを入力/保存。
Index name prefix はデフォルトのままでOK。

2. 検索フォームの選択

Algolia search→Search Page。
検索ページをどのように実装するかによって異なるのでサイトに合わせて選択する。

  • Do not use Algolia: サイト内検索をAlgoliaに置き換えない。自前で実装する場合はこちら。
  • Use Algolia in the backend : サイト内検索をWordPressからAlogliaに置き換えるが、Instantsearch.jsでは無く PHP を利用した検索になる
  • Use Algolia with Instantsearch.js : サイト内検索をWordPressからAlogliaに置き換えInstantsearch.jsを利用する

3. インデックスに送信する投稿タイプなどの設定

Algolia search→Autocomplete。
検索窓でオートコンプリート機能を使う場合は、 「Enable autocomplete」のチェックを入れる。
ConfigurationでAlgoliaのインデックスに登録する(検索対象とする)、投稿タイプ/ユーザー情報/タクソノミーにチェックを入れる。

保存したらインデックスの送信を促すボタンが出るので送信しておく。

Algoliaのインデックスの設定

AlgoliaのダッシュボードでWordPress送信されたインデックスの設定を行う。
各インデックスのConfigurationタブで設定する。
インデックスが複数ある場合、1つのインデックスの設定を他のインデックスにも反映させることができるので、同じ設定であれば複数回繰り返さなくても良い。

1. インデックスが作成されているかの確認

prefixがデフォルトのままの場合

  • wp_searchable_posts→全ての投稿タイプの投稿が含まれるインデックス
  • wp_posts_post→投稿のみのインデックス

など、インデックスが作成されているか確認

2. Languages

形態素解析を使用できる様 日本語のサイトの場合は必ず設定しておく。

設定名 内容
Index Languages Japanese
Query Languages Japanese

3. Searchable attributes

検索対象となる要素名を指定する。
WP Search with Algolia プラグイン利用時のデフォルトは下記の通り。

Algoliaの要素名 WordPress 検索語のマッチした位置
post_title 投稿のタイトル unordered
taxonomies 投稿に付与されているタクソノミー(カテゴリー、タグ、カスタムタクソノミー) unordered
content 投稿の本文 unordered

検索語のマッチした位置はマッチした位置を考慮するかどうか。
ordered にするとより早い位置(前のほう)に出てくるレコードが上位になる。

要素の並び順を変更すると検索時のランキングに影響する。

4. Ranking and sorting

検索結果のランキング/重み付けの設定。
WP Search with Algolia プラグイン利用時のデフォルトは下記の通り。

種別 Algoliaの要素名 順序
TEXTUAL Ranking Criteria
CUSTOM RANKING is_sticky Descending
CUSTOM RANKING post_date Descending
CUSTOM RANKING record_index Ascending
  1. Algolia のデフォルトランキングストラテジー に基づくランク付け
  2. 同じランキングの場合「先頭に固定表示」の投稿を優先
  3. 同じランキングの場合「公開日時」の新しい投稿を優先
  4. 同じランキングの場合「レコードインデックス」が小さい投稿を優先

Webサイト側の検索ページ

どういう検索をさせたいかによるのでこの記事で具体的な手法は記載しない。

  • WP Search with Algolia プラグインの場合、WordPressデフォルトの検索フォームをAlogliaに置き換えてくれる
  • WP Search with Algolia プラグインのテンプレートを利用する
  • Search with Algolia Instantsearch Blocks を使う
  • Instantsearch.js APIを利用して自前で頑張る

あわせて読んで欲しい記事

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0