検索結果から 固定ページを 除外したい
でも カスタム投稿タイプ は 除外したくない
そんなこんなで exclude_from_search を true に する方法を 考えついた

検索結果から固定ページを除外 等で 調べると
pre_get_posts で query を 変更する方法が 多く出てきたけど
カスタム投稿タイプ の スラッグを 全部書かないといけない

カスタム投稿タイプ が 増減したら 増減したら 面倒だな
と思って 他の方法は ないかな?? と思っていたら

カスタム投稿タイプの 設定には exclude_from_search という項目がある

page の exclude_from_search を true に するのではいけないのだろうか??

add_action( 'init', function() {
  global $wp_post_types;

  $page = &$wp_post_types['page'];
  $page->exclude_from_search = true;

  unset( $page );
} );

ということで 実装してみた

問題なく動いてるけど

あまり この方法の記事を見なかった…

安全性がちょっと わからないや…

Related Article

投稿 の タイトル を 数字のみ に 変換 する

詳細へ »

管理ページで カスタム投稿タイプの デフォルトの並び順 を 変更する!!

詳細へ »

親テーマのメニューを非表示にしてみた

詳細へ »