特定のページを検索対象から除外できるWordPressプラグイン「Search Exclude」

特定のページを検索対象から除外できるWordPressプラグイン「Search Exclude」

特定のページを検索対象から除外できるWordPressプラグイン「Search Exclude」

Search Excludeは、特定の投稿や固定ページなどをサイト内検索の検索対象から除外できるWordPressプラグインです。

プラグインをインストールしたら追加される設定にチェックを入れるだけで、検索にヒットしてほしくないページを簡単に除外できます。

Search Excludeのインストール

インストール手順は以下の通りです。

ファイルをFTPでアップロードしてインストール

  1. Search Excludeをダウンロードします。
  2. ダウンロードしたファイルを展開し wp-content/plugins にアップロードします。
  3. 管理画面の[プラグイン]ページで、Search Excludeを有効化します。

WordPress管理画面でインストール

  1. [プラグイン] – [新規追加]にアクセスします。
  2. 「Search Exclude」で検索します。
  3. [今すぐインストール]をクリックして、Search Excludeをインストールします。
  4. [有効化]をクリックしてプラグインを有効化します。

Search Excludeの使い方

投稿編集画面を開くと、「Search Exclude」という項目が追加されています。「Exclude from Search Results」にチェックを入れると、そのページは検索対象から除外されます。

ページを検索対象から除外

検索対象から除外されているページの確認

検索対象から除外されているページの一覧は、[設定] – [Search Exclude]で確認できます。

検索対象から除外されているページの一覧

ここでチェックを外して保存すると、除外が解除され再び検索対象に含まれます。

プラグインを使わずに検索対象から除外したい場合

余談ですが、プラグインを使わずに検索対象から除外したい場合は、pre_get_postsを使えば簡単に検索対象から除外できます。

適用しているテーマのfunctions.phpに以下のようなコードを追記しましょう。除外したいページの投稿IDやカテゴリーなどで指定できます。

function my_search_result_exclude($query) {
  if (!is_admin() && $query->is_search) {
    $query->set('post__not_in', array(12,23,36)); //投稿IDで除外
    $query->set('category__not_in', array(47,58)); //カテゴリーのIDで除外
  }
  return $query;
}
add_action('pre_get_posts', 'my_search_result_exclude');

「if (!is_admin() && $query->is_search)」は”管理画面以外でかつ検索結果ページの場合”という条件分岐です。なので、フロント側の検索結果ページでのみ処理が実行されます。

「post__not_in」は投稿IDによる除外、「category__not_in」はカテゴリーIDによる除外です。

上記の場合、投稿IDが「12・23・36」のページと、IDが「47・58」のカテゴリーが指定されているページが除外されます。

あとがき

管理画面上から簡単に除外できて便利ですね。

検索結果ページに表示させたくないページがある場合は、ぜひご活用ください。

この記事が気に入ったら
いいね!してね♪

Twitter で

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です