WordPressの検索欄を作成していて、ふとした時に「あれ!?検索結果がこんな風になってるの?」と思ったことはありませんか?。
今回は、検索欄を作成し、たまたま検索欄に「Mac」と打ち込み検索した結果、固定ページも表示されてしまうことが発覚!?
個人的にAbout meをそこまでアピールする気はないので…w
…ということで、検索結果に指定したページを表示させない方法をご紹介します。
もくじ
対処方法
下記のコードをfunctions.phpに書きます。
//検索から指定ページを省く
function fb_search_filter($query) {
if ( !$query -> is_admin && $query -> is_search) {
$query -> set('post__not_in', array(28, 35) );
}
return $query;
}
add_filter( 'pre_get_posts', 'fb_search_filter' );
‘post__not_in’, array( 28, 35 )
では、表示をしたくないページやポストの ID を指定します。また、もっとたくさんのページやポストを指定することもできます!
以上です!
確認
同じく「Mac」と打ち込み検索しましたが、固定ページは一覧から姿を消しました。
【参考にさせていただきましたサイト】
Exclude Posts and Pages in WordPress Search – WP Engineer