1

親ページを持つ 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');

敬具 ヨハン

4

2 に答える 2

2

Wordpress 3.6 では、新しいクエリ パラメータを使用できます。post_parent__not_in

post_parent__not_in (array) - use post ids. Specify posts whose parent is not in an array.

于 2013-08-08T09:36:06.177 に答える