JOURNAL クリエイティブとマーケティングの話

WordPressの検索で投稿のみを検索対象にする

WordPressのサイト内検索で、固定ページを除外し投稿のみを検索の対象とする方法。function.phpに下記を追加するときっと素敵なことがあなたにも!

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

WordPressにサイト内検索を設置する際、個別ページを検索対象に含みたいときってあまりないと思うので重宝しますね。

またfunction.phpは基本的にPHPで書かれていますので、記述を追加する際は

<?php
// ここにソースを記述します。
?>

の間に書く必要があります。最後の?>のあとに余計な改行やスペースが入っていると不具合が出ますので注意してください。

それからfunction.phpだけじゃなく、WordPressのテーマを編集するときは事前にバックアップを取っておくことを忘れずに!