我目前在wordpress网站上有一个基于复选框的搜索和过滤器。
基本上,它使用这个wp_query 工作
$queryObject=new WP_Query(数组("post_type"=>'toy','posts_per_page'=>999999,'category___and'=>$_POST['myListOfCategories']);
我想放弃使用类别(因为这让使用博客变得很痛苦)
因此,我现在已经使用自定义分类法设置了所有内容,并注意到没有"taxonomy_and"。
有人知道使用WP_Query以与category_and相同的方式使用分类法搜索帖子的方法吗?
例如,我传递了多个分类id,它只返回所有链接的帖子。
来源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 );
您已经在Wordpress 的Query_posts中通过了多个分类法
请参阅下面的URL这对您来说是非常有帮助的:-
https://wordpress.stackexchange.com/questions/25999/how-to-pass-url-parameters-for-advanced-taxonomy-queries-with-multiple-terms-for
https://wordpress.stackexchange.com/questions/10713/wp-3-1-getting-tax-query-to-work-in-query-posts
在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'
),
) );
在其他海报的帮助下,这里是我问题的最终答案:
$queryObject=new WP_Query(array("post_type"=>'toy','posts_per_page'=>10,'tax_Query'=>array(阵列('taxonomy'=>'toy_cats','field'=>'id',"terms"=>数组(14,20,39,42),"operator"=>"AND"))));
上面的代码将只显示具有"toy"帖子类型的帖子,在分类法"toy_cats"中,并且被分配给以下所有术语id的14 and 20 and 39 and 42
希望这能帮助其他人。