親ページを持つ WordPress の特定のページがあります。それらの親ページを WordPress 検索から除外したい。
functions.php でこれを試しました:
function SearchFilter($query) {
if ($query->is_search) {
$query->set('post_parent', '4');
}
return $query;
}
add_filter('pre_get_posts','SearchFilter');
このコードでは、post_parent のみが検索可能ですが、私はその逆が必要です。これはどのように見えるでしょうか?
更新: 問題は解決しました。解決策は次のとおりです (4 は、親ページを検索から除外する特定のページの ID です)。
function SearchFilter($query) {
if ($query->is_search) {
$query->set('post_parent__not_in', array(4));
}
return $query;
}
add_filter('pre_get_posts','SearchFilter');
敬具 ヨハン