ワードプレス検索カスタマイズ編

今回はワードプレスのsearch.phpをカスタマイズしてみます。
カテゴリーとタグのみで検索できる仕組みを作ってみました。今回はテキスト文字検索はなしです。

カテゴリーとタグのみの検索でプルダウンメニューにしてあります。
テキストは空で渡すようにしてhiddenにしてあります。
本来ワードプレスの検索テキストフィールドは必須なのですが空で渡しております。

search.phpでも表示できるようにfunctions.phpにもちょこちょこ書き足します。


スポンサーリンク

search.phpもしくは他ページから

検索結果:found_posts; ?>件

search.phpは上記みたいな感じにしてfunctions.phpに条件を書き足します。

functions.php

//投稿記事のみを検索対象
function SearchFilter($query) {
	if ($query->is_search) {
		$query->set('post_type', 'post');
        // ページを含める場合
        //$query->set('post_type', array('post', 'page'));
        // 特定カテゴリーを除外
        //$query->set('post_type', 'post');
        //$query->set('category__not_in', array(1,2));
	}
	return $query;
}
add_filter('pre_get_posts','SearchFilter');


// 検索フォームがなくてもseach.phpへ表示
function custom_search($search, $wp_query  ) {
	//query['s']があったら検索ページ表示
	if (isset($wp_query->query['s'])) {
		 $wp_query->is_search = true;
	}
	return $search;
}
add_filter('posts_search','custom_search', 10, 2);

以上で完了!!こんな感じでプルダウンだけの検索が実装完了です!!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です