Relevanssi – A Better Search

説明

Relevanssi は WordPress の標準的な検索機能を、多くの機能と設定可能なオプションを持つ、より優れた検索エンジンに置き換えます。より良い検索結果を得ることができることができますので、サイト利用者を満足させることができます。

これは Relevanssi の無料版です。機能が追加された Relevanssi Premium もあります。プレミアムについては Relevanssi.com をご覧ください。

Relevanssi を使用するには、大量の(数百メガバイトの) データベース領域が必要な場合があることに注意してください (妥当な見積もりは wp_posts データベーステーブルのサイズを3倍することです)。もし、データベーステーブルの容量に制限がある場合、Relevanssi を使用すると問題が発生する可能性があります。そのような場合、Relevanssi の使用はおすすめできません。

主な特長

  • 検索結果は、日付順ではなく、関連性の高い順にソートされます。
  • あいまい一致: 完全な単語が一致しない場合、部分的な単語を一致させます。
  • 1つの検索語のみに一致する文書 (OR クエリ) 、またはすべての語句の出現を必要とする文書 (ANDクエリ) を検索します。
  • “検索フレーズ” のように引用符で囲んで検索します。
  • キーワードがハイライトされ、ヒットした場所を示すカスタム抜粋を作成します。
  • ユーザーが検索結果をクリックすると、文書内のキーワードがハイライトされます。
  • コメント、タグ、カテゴリー、カスタムフィールドを検索できます。
  • マルチサイトにも対応しています。
  • bbPress をサポートしています。
  • Gutenberg に対応しています。

高度な機能

  • タイトル、タグ、コメントの重み付けを調整できます。
  • クエリーのログ、最も人気のあるクエリー、ヒットしない最近のクエリーを表示できます。
  • 隠し変数やプラグインの設定により、検索対象をカテゴリーやタグに限定することができます。
  • カスタム投稿タイプやカスタムタクソノミーをインデックスします。
  • ショートコードの内容をインデックスします。
  • ユーザーの検索結果を基にした Google のような「Did you mean ?」サジェスト。
  • WPML multi-language pluginPolylang をサポートしています。
  • s2member membership plugin, Members, Groups, Simple Membership などの会員管理向けプラグインに対応しています。
  • 検索結果を思い通りにハックするための高度なフィルタリング。
  • 検索結果のスロットリングにより、大規模データベースでのパフォーマンスを改善。
  • シンプルなフィルターフックで、投稿内容や投稿タイトルのインデックスを無効にすることができます。

プレミアム機能 (Relevanssi プレミアム)

  • 添付ファイルの内容をインデックス化 (PDF、Office、Open Office)。
  • 「Did you mean ?」のスペルチェックを改善しました。
  • マルチサイト内の複数のサイトにまたがって検索することができます。
  • ユーザーのプロフィールを検索し、インデックスします。
  • タクソノミーのキーワードページ (カテゴリー、タグ、カスタムタクソノミー) を検索し、インデックスを作成します。
  • wp_posts MySQL テーブルの任意のカラムを検索し、インデックスを作成します。
  • 任意の投稿タイプやタクソノミーにウェイトを設定できます。
  • 新しい投稿に特別なウェイトを割り当てることができます。
  • AND 検索と OR 検索を選択できるようにし、+と-演算子 (AND と NOT) が使用できます。
  • 設定のエクスポートとインポート機能。
  • WP CLI コマンド
  • 関連する投稿
  • 検索用のリダイレクト

謝辞

  • Cristian Damm タグインデックス、コメントインデックス、投稿/固定ページ除外、その他全般。
  • Marcus Dalgren UTF-8 対応。
  • Warren Tape バージョン2.5.5対応。
  • Mohib Ebrahim 詳細なバグ発見。
  • John Calahan バージョン4.0の広範囲にわたるベータテスト。

スクリーンショット

  • 概要ページ
  • インデックス設定
  • 検索設定
  • ログ設定
  • 抜粋とハイライト
  • 同義語設定
  • ストップワード設定

インストール

  1. WordPress 管理画面からプラグインをインストールします。
  2. プラグインを有効化します。
  3. プラグインの設定ページで、説明に沿ってインデックスを構築してください。
  4. これで完了です !

Relevanssi は標準の検索フォームを使用するので、通常、検索結果のテンプレートを変更する必要はありません。

検索しても結果が表示されない場合、使用しているテーマが検索結果のテンプレートで query_posts() を呼び出している可能性があり、Relevanssi の動作に影響していることがあります。詳しくは The most important Relevanssi debugging trick をご覧ください。

アンインストール

プラグインをアンインストールするには、WordPress 管理画面の「プラグイン」からプラグインを削除します (プラグインページから、まず無効化し、次に削除)。プラグインファイルを手動で削除しても、データベースのテーブルとオプションは残ります。

FAQ

ナレッジベース

Relevanssi のナレッジベース で解決策や答えを見つけることができます。

コンテキストヘルプ

多くの一般的な問題に対する答えは、コンテクストメニューから見つけることができます。WordPress の管理画面右上の Relevanssi の設定ページにある「ヘルプ」をクリックするだけです。

Relevanssi が動作しません

Relevanssi をインストールし有効にしてもうまく動作しない場合、最も考えられる理由は、検索結果のテンプレートで query_posts() を呼び出していることです。これは Relevanssi の動作に不具合を起こす可能性があります。 query_posts() の呼び出しを削除してみてください。

アンパサンドやハイフンを含む単語の検索がうまくできません

句読点を含む単語が見つからない をお読みください。Relevanssiのインデックス作成設定から修正することができます。

ユーザーの検索ログはどこにありますか ?

管理メニューの「ユーザー検索」で確認できます。

関連性スコアを表示したい

Relevanssi は結果をソートするために使用する関連性スコアを $post 変数に格納します。以下を追加するだけです。

echo $post->relevance_score

これを検索結果テンプレートに追加すると、関連性スコアが表示されるようになります。

「Did you mean ?」とは何ですか

Relevanssi は Google のような “Did you mean ? “サジェスト を提供します。詳しくはナレッジベースの “Did you mean” サジェストを参照してください。

tf * idf の重み付けとは何ですか ?

情報検索で使われる基本的な重み付け方式です。tf は 用語頻度 の略で、idf は 逆文書頻度 (inverted document frequency) です。用語頻度とは単純に用語が文書に出現する回数で、文書頻度とはその用語が出現するデータベース内の文書の数です。

したがって、ある文書に対するその単語の重みは、その文書に出現する回数が多いほど、また、他の文書に出現する回数が少ないほど大きくなります。

ストップワードとは何ですか ?

各文書のデータベースには、無駄な単語がたくさんあります。ほぼすべての文書に登場する短い単語は、情報検索の目的にはまったく役に立たないものばかりです。基本的に、それらの逆引き文書頻度は低いので、マッチングにおいて大きな力を発揮することはありません。また、それらの単語を削除することで、インデックスを小さくし、検索を高速化することができます。

評価

2022年7月29日
I rarely find a plugin that does exactly what I need, clearly and efficiently (therefore, I usually build it myself). The various but smooth settings allow a perfect fine tuning: nothing more and nothing less than what is really needed. My compliments!
2022年7月26日
Great searching engine that works without needing a lot of work - altough you can set everything to your liking if you want. The support is fast and responsive if you have a problem. Even if it's your own fault 😉
2022年6月8日
I cannot understand why Relevanssi does not have more active installs, since the years it's the best plugin to sort the WP search results by Relevancy. I would like to see 1 million installs soon, it deserves.
2022年6月1日
The plugin helps me a lot in searching my site, and I also got specific and excellent support that solved my problem that was on my site because of a template I used.
346件のレビューをすべて表示

貢献者と開発者

Relevanssi – A Better Search はオープンソースソフトウェアです。以下の人々がこのプラグインに貢献しています。

貢献者

“Relevanssi – A Better Search” は12ロケールに翻訳されています。 翻訳者のみなさん、翻訳へのご協力ありがとうございます。

“Relevanssi – A Better Search” をあなたの言語に翻訳しましょう。

開発に興味がありますか ?

コードを閲覧するか、SVN リポジトリをチェックするか、開発ログRSS で購読してみてください。

変更履歴

4.16.0

  • 新機能: Oxygen 4からの JSON データをサポートするために、Oxygen の互換性がアップグレードされました。これはまだ初期段階ですので、Oxygen ユーザーからのフィードバックをお待ちしています。
  • 新機能: 新しいフィルターフック relevanssi_oxygen_element は、Oxygen JSON 要素をフィルターするために使用されます。以前の relevanssi_oxygen_section_filtersrelevanssi_oxygen_section_content フィルターは Oxygen 4では使われなくなり、このフックが Oxygen 要素のフィルターになる唯一の方法です。
  • 動作変更: Relevanssi は remove_accents() をすべての文字列に適用するようになりました。これは、デフォルトのデータベースの照合順序がアクセントを無視するため、 アクセントがあるとインデックス作成時に情報が欠落する可能性があるためです。アクセントを無視しないデータベースの照合順序を使用する場合は、このフィルターを必ず無効化してください。
  • 軽微な修正: the_category フィルターに不足していたパラメータを追加。
  • 軽微な修正: Relevanssi Live Ajax Searches で、下書きと保留中の投稿が表示されないようにしました。
  • 軽微な修正: 複数単語のフレーズが単一単語のフレーズに見える場合に、フレーズが使用されないことがあったのを修正。
  • 軽微な修正: relevanssi_strip_all_tags() からの致命的なエラーを防止。

4.15.2

  • 新機能: 新しいフィルターフック relevanssi_didyoumean_token を使って、訂正前の Did you mean の単語をフィルターすることができます。このフィルターフックを使って、修正対象から単語を除外することができます。
  • 軽微な修正: フレーズ検索で、アンパサンドを含むフレーズが投稿タイトルに一致する場合、検索できないことがありました。現在は正常に動作しています。
  • 軽微な修正: テーブルセルのタグの後にスペースを追加し、テーブルセルのコンテンツが抜粋の中で結合しないようにしました。
  • 軽微な修正:「抜粋で使用可能なタグ」機能で、入力値を Relevanssi が自動的に修正するようになりました。

4.15.1

  • 動作変更: WordPress のメタデータのカスタムフィールドを無視するようにしました。
  • 動作変更: relevanssi_get_permalink()relevanssi_the_permalink() のいずれもパラメータとしてポスト ID またはポストオブジェクトを取得でき、ループ外で使用できるようになりました。
  • 動作変更: relevanssi_hits_filter フックは、2番目のパラメータとして WP_Query オブジェクトを取得するようになりました。
  • 軽微な修正: mysqlcolumn_matches 配列のキーが見つからない場合のエラーメッセージを回避するようにしました。

4.15.0

  • 新機能: アクションフック relevanssi_initrelevanssi_init() 関数の最後で実行されます。
  • 新機能: 新しいフィルターフック relevanssi_author_query_filter は、投稿者の MySQL クエリーをフィルターします。
  • 新機能: 新しいフィルタフック relevanssi_by_date_query_filter は by_date MySQL クエリーをフィルターします。
  • 新機能: 新しいフィルタフック relevanssi_date_query_filter は、日付クエリー MySQL クエリーをフィルターします。
  • 新機能: 新しいフィルターフック relevanssi_parent_query_filter は、投稿の親の MySQL クエリーをフィルターします。
  • 新機能: 新しいフィルターフック relevanssi_post_query_filter は post__in と post__not_in MySQL クエリーをフィルターします。
  • 新機能: 新しいフィルターフック relevanssi_post_status_query_filter は post_status MySQL クエリーをフィルターします。
  • 新機能: 新しいフィルターフック relevanssi_post_type_query_filter は post_type MySQL のクエリーをフィルターします。
  • 軽微な修正: Bricks の互換性が改善され、Brick の投稿の変更をより頻繁に認識するようになりました。また _bricks_page_content_2 カスタムフィールドからテキストのみを読み込むようにしました。