pagetop

BLOG

【WORDPRESS】管理ページで投稿記事が検索できない理由

  • HOME

  • BLOG

  • 【WORDPRESS】管理ページで投稿記事が検索できない理由

Article

【WORDPRESS】管理ページで投稿記事が検索できない理由

WORDPRESS

管理ページで記事が検索できない事象というのは、いくつかあると思います。

今回、一例を短くメモします。

 

投稿が検索できない

【WORDPRESS】管理ページで投稿記事が検索できない理由

記事が増えたある時期、投稿をカテゴリやフリーワード検索しても記事が全くソートされないというトラブルが。
類似記事を検索したり、クイック編集したりが、すごく不便ですね。

 

原因はfunctions.phpのある記述

原因を調べたところ、思いあたったのはfunctions.phpに記述してある以下のプログラムでした。

function SearchExcludeCategoryFilter($query) {
if ($query->is_search) { $query->set('cat','-40,-15'); }
return $query;
}
add_filter('pre_get_posts','SearchExcludeCategoryFilter');

これは、フロントページに検索機能をつけた場合、ある特定のカテゴリは検索しないように設定したプログラムです。

本サイトで「投稿」としてコントロールしているカテゴリは「ブログ」「実績」「ニュース」です。

フロントでは「ブログ」のみを検索対象にしたかったので、「実績」と「ニュース」がヒットしないよう上記で設定しています。

実はこれが問題で、コメントアウトすると無事に検索できました。

フロントだけでなく、functions.phpは菅理ページにも影響していることに注意しないとですね。

 

フロントでカテゴリ「ブログ」だけを検索する方法

管理ページはいいけど、フロントどうするってことになりますよね。現時点ではそれほど記事も多くないのでいいですが、今後を考えると必要ですよね。やっぱり。
そこで、アナログ的にやってみます。

<form>
<input name="s" type="search" />
<input name="cat" type="hidden" value="カテゴリID" />
<input type="submit" value="検索" />
</form>

直接フォームにカテゴリ入れてしまう超単純な方法で乗り切ろうと思います。

Spread the love