フィルターで使用する方法$query->set('tax_query', ...)
はありpre_get_posts
ますか?たとえば、次のコードはクエリを変更していません。私は$ taxonomiesをカスタム検索から作成していることに注意してください。
function custom_search_filter($query) {
...
// array('taxonomy' => 'category', 'field' => 'id', 'terms' => array( 41,42 ), 'operator' => 'IN')
$taxonomies = implode(',', $taxonomy_arr);
// /wordpress/25076/how-to-filter-wordpress-search-excluding-post-in-some-custom-taxonomies
$taxonomy_query = array('relation' => 'AND', $taxonomies);
$query->set('tax_query', $taxonomy_query);
}
return $query;
}
add_filter( 'pre_get_posts', 'custom_search_filter', 999 );
前もって感謝します。
はい、私は間違っていました、今、文字列を配列に変換するためにevalを使用しました(そして、文字列が安全であることを本当に確信しています)。ありがとう。
—
ホセパブロオロスコマリン
WP_Query
オブジェクトを引数設定メソッドに渡すのはなぜですか?