特定の記事を検索結果から除外する
WordPressにはデフォルトで検索フォーム機能がついていますが、
記事同様、固定ページも検索対象なので、検索ワードによってはひっかかってしまいます。
検索できるのは記事だけで十分、という方には少し邪魔ですね。
WordPressは検索結果に関してもカスタマイズができるので、
検索に引っかかってほしくない記事を除外してみましょう。
テーマファイル内の functions.php を用意する
現在使用しているテーマファイル内の functions.php を編集します。
ない場合は同名のファイルを作成します。
検索から除外する記事を指定する
<?php function fb_search_filter($query) { if ( !$query->is_admin && $query->is_search) { $query->set('post__not_in', array(1,2,3) ); // 記事ID配列 } return $query; } add_filter('pre_get_posts', 'fb_search_filter'); ?>
array(1,2,3)には、除外したい記事IDをカンマ区切りで入れます。
これで検索結果には表示されなくなります。
ページIDも指定できるので、特定の固定ページを検索結果に出さないこともできます。
関連記事