WordPressの検索結果から固定ページを除外する方法

WordPressの検索対象は、デフォルトでは投稿ページと固定ページの両方となっています。
固定ページは検索結果から除外したいという場合も多いと思うので、その時のための方法。

ダッシュボードの「外観」 > 「テーマの編集」画面にいき、「functions.php」を選択します。
どこでもいいので、以下のコードを追加。


add_filter( 'pre_get_posts', 'custom_search_filter' );
function custom_search_filter( $query ) {
  if ( $query->is_search ) {
    $query->set( 'post_type', 'post' );
  }
  return $query;
}

これだけでできちゃいます!

$query->set( 'post_type', 'post' );

の部分で検索対象のタイプを設定しています。

コメント