我目前在wordpress网站上有一个基于复选框的搜索和过滤器。
基本上它使用这个wp_query
$queryObject = new WP_Query(array("post_type"=>'toy','posts_per_page'=>999999, 'category__and' => $_POST['myListOfCategories']));
我想摆脱使用类别(因为它正在使用博客制作痛苦)
所以我现在使用自定义分类法设置所有内容,并注意到没有“taxonomy__and”。
是否有人知道如何使用WP_Query以类似的方式使用分类法搜索帖子类别并且有效?
e.g。我传递了多个分类标识,它只返回所有链接的帖子。
答案 0 :(得分:1)
来自http://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters
你应该可以使用这样的东西;
$args = array(
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => 'movie_genre',
'field' => 'slug',
'terms' => array( 'action', 'comedy' )
),
array(
'taxonomy' => 'actor',
'field' => 'id',
'terms' => array( 103, 115, 206 ),
'operator' => 'NOT IN'
)
)
);
$query = new WP_Query( $args );
答案 1 :(得分:1)
您已在Wordpress的Query_posts中传递多个分类
见下面的URL对您来说非常有帮助: -
https://wordpress.stackexchange.com/questions/10713/wp-3-1-getting-tax-query-to-work-in-query-posts
Query multiple custom taxonomy terms in Wordpress 2.8?
或尝试
query_posts( array(
'tax_query' => array(
array(
'taxonomy' => 'tax1',
'field' => 'slug',
'terms' => array('term1', 'term2'),
'operator' => 'OR'
),
array(
'taxonomy' => 'tax2',
'field' => 'slug',
'terms' => array('term3', 'term4'),
'operator' => 'AND'
),
) );
答案 2 :(得分:1)
在其他海报的帮助下,这是我问题的最终答案:
$queryObject = new WP_Query(array("post_type"=>'toy','posts_per_page'=>10,'tax_query' => array( array( 'taxonomy' => 'toy_cats', 'field' => 'id', 'terms' => array(14,20,39,42), 'operator' => 'AND' ) )));
以上代码仅显示具有“玩具”帖子类型的帖子,位于分类标准“toy_cats”中,并且分配给以下所有术语ID为14和20以及39和42
希望这有助于其他人。