DAINASHI YESTERDAY

2012.08.05

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

wp_img6-1200x800

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

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

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

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

<?php
?>

の間に書く必要があります。最後の?>のあとに余計な改行やスペースが入っていると不具合が出ますので注意してください。wordpressとwikiの覚書にPHPファイルの書き方について分かりやすく解説してくれてますので是非目を通して見るとよいかと思います。

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

投稿者: