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) です。用語頻度とは単純に用語が文書に出現する回数で、文書頻度とはその用語が出現するデータベース内の文書の数です。

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

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

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

評価

2023年1月27日
Easy to install and configure, nstantly better and faster results, great docs and knowledge base. Love it.
2022年12月23日
At first I was sceptic because it just looked too good to be true. We bought the pro version for a client and we are thrilled. Also, we were unsure how to configure certain search settings (searching through ACF) so we contacted the support. They replied superfast and helpful. 10/10!
2022年12月1日
Been using this for over a year now. Been a fantastic plugin. Users love it. It's heavy, yes. But it is more efficient than other search plugins I've tried beyond going to the external service Elastic / Algolia route. Mikko is fantastic to deal with as well if you ever have any issues. Extremely easily to customize and works great with a lot of other plugins.
2022年11月29日 1 reply
Since Relevanssi - take the first light of birth, i try to get that baby to run. I love the name of the Plug,(2Stars) but like parents you all time forget what bad things these plugins has done to you and your time with the webpage /blog.
358件のレビューをすべて表示

貢献者と開発者

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

貢献者

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

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

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

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

変更履歴

4.18.3

  • New feature: New filter hook relevanssi_blocked_field_types can be used to control which ACF field types are excluded from the index. By default, this includes ‘repeater’, ‘flexible_content’, and ‘group’.
  • New feature: New filter hook relevanssi_acf_field_object can be used to filter the ACF field object before Relevanssi indexes it. Return false to have Relevanssi ignore the field type.
  • New feature: Relevanssi debug mode has more features now.
  • Minor fix: ACF field exclusion is now recursive. If a parent field is excluded, all sub fields will also be excluded.
  • Minor fix: Handling of data attributes in in-document highlighting had a bug that caused problems with third-party plugins.
  • Minor fix: The indexing settings tab now checks if the wp_relevanssi database table exists and will create the table if it doesn’t.

4.18.2

  • New feature: Relevanssi now has a debug mode that will help troubleshooting and support.
  • Minor fix: Using the_permalink() caused problems with search result links. That is now fixed. Relevanssi no longer hooks onto the_permalink hook and instead uses post_link and other similar hooks.

4.18.1

  • New feature: New filter hook relevanssi_add_highlight_and_tracking can be used to force Relevanssi to add the highlight and tracking parameters to permalinks.
  • Changed behaviour: The ‘relevanssi_wpml_filter’ filter function now runs on priority 9 instead of 10 to avoid problems with custom filters on relevanssi_hits_filter.
  • Minor fix: Handle cases of missing posts better; relevanssi_get_post() now returns a WP_Error if no post is found.
  • Minor fix: Search queries that contain apostrophes and quotes can now be deleted from the log.
  • Minor fix: Avoid a slow query on the searching tab when the throttle is not enabled.

4.18.0

  • New feature: Relevanssi now shows the MySQL max_allowed_packet size on the debug tab.
  • New feature: Relevanssi now shows the indexing query on the debug tab.
  • New feature: ACF field settings now include a ‘Exclude from Relevanssi index’ setting. You can use that to exclude ACF fields from the Relevanssi index.
  • Minor fix: Relevanssi was adding extra quotes around search terms in the highlight parameter.
  • Minor fix: Yet another update to data attributes in highlighting. Thanks to Faeddur.
  • Minor fix: Taxonomy query handling was improved. This should help in particular Polylang users who’ve had problems with Relevanssi ignoring Polylang language restrictions.

4.17.1

  • Minor fix: WooCommerce layered navigation compatibility caused enough problems that I’ve disabled it by default. You can enable it with add_filter( 'woocommerce_get_filtered_term_product_counts_query', 'relevanssi_filtered_term_product_counts_query' );.
  • Minor fix: Data attribute handling for in-document highlighting is now better.

4.17.0

  • New feature: You can now look at how the posts appear in the database from the Debugging tab.
  • New feature: Relevanssi now works with WooCommerce layered navigation filters. The filter post counts should now match the Relevanssi search results.
  • New feature: New function relevanssi_count_term_occurrances() can be used to display how many times search terms appear in the database.
  • Changed behaviour: Relevanssi post update trigger is now on wp_after_insert_post instead of wp_insert_post. This makes the indexing more reliable and better compatible with other plugins.
  • Changed behaviour: Previously, throttling searches has been impossible when results are sorted by date. Now if you set Relevanssi to sort by post date from the searching settings, you can enable the throttle and the throttling will make sure to keep the most recent posts. This does not work if you set the orderby to post_date elsewhere.
  • Minor fix: Prevents Relevanssi from interfering in fringe cases (including The Event Calendar event search).
  • Minor fix: Relevanssi added the highlight parameter to home page URLs, even though it shouldn’t.
  • Minor fix: Indexing nav_menu_item posts is stopped earlier in the process to avoid problems with big menus.
  • Minor fix: If the sentence query variable is used to enable phrase searching, Relevanssi now adds quotes to the highlight parameter.
  • Minor fix: Add support for JetSmartFilters.
  • Minor fix: Add support for WooCommerce products attribute lookup table filtering.
  • Minor fix: Improve excerpts to avoid breaking HTML tags when tags are allowed.
  • Minor fix: Fix broken tag and category weight settings.
  • Minor fix: Improve Polylang language detection.
  • Minor fix: Relevanssi now hyphenates long search terms in the User searches page. This prevents long search terms from messing up the display.
  • Minor fix: Improve WPFD file content indexing support. Relevanssi indexing now happens after the WPFD indexing is done.
  • Minor fix: Add support for TablePress table_filter shortcodes.
  • Minor fix: Stopped some problems with Did you mean suggestions suggesting the same word if a hyphen was included.
  • Minor fix: Paging didn’t work in admin searches for hierarchical post types (like pages).
  • Minor fix: In-document highlighting could break certain elements thanks to Relevanssi messing up data attributes.
  • Minor fix: Relevanssi now recursively runs relevanssi_block_to_render and the CSS relevanssi_noindex filtering for inner blocks.

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() からの致命的なエラーを防止。