有没有办法$query->set('tax_query', ...)
在pre_get_posts
过滤器中使用?例如,下一个代码不会更改查询。请注意,我正在通过和自定义搜索构建$分类法。
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
对象传递给参数设置方法?