我有这段代码:
if($pf_categorynotin){
$args['tax_query'] = array(
array(
'taxonomy' => 'portfolio_category',
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
); //category__in
}
它定义了一个分类,即 portfolio_tag 。 我想要做的是添加另一个分类,如 portfolio_tag
我不确定是否会这样:'taxonomy' => 'portfolio_category', 'portfolio_tags',
基本上我想要做的是在该数组中添加另一个分类法。
答案 0 :(得分:1)
在此处查看“多分类处理”示例: http://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters
$args['tax_query'] => array(
'relation' => 'AND',
array(
'taxonomy' => 'portfolio_category',
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
),
array(
'taxonomy' => 'portfolio_tags',
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
);
您应该调整relation
和operator
以满足您的需求。
答案 1 :(得分:0)
如果您需要多个值,则必须使用数组,因此请替换以下行:
'taxonomy' => 'portfolio_category',
这个:
'taxonomy' => array('portfolio_category','portfolio_tags'),
但请记住,必须调整阅读$args['tax_query']
的代码,以考虑$args['tax_query'][0]['taxonomy']
现在可以是数组或字符串。
答案 2 :(得分:0)
您可以使用taxonomy
制作数组,以便您的代码看起来像:
if($pf_categorynotin){
$args['tax_query'] = array(
array(
'taxonomy' => array('portfolio_category', 'portfolio_tags'),
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
); //category__in
}
而$args['tax_query'][0]['taxonomy'][0]
将'portfolio_category'
而$args['tax_query'][0]['taxonomy'][1]
将为'portfolio_tags'
答案 3 :(得分:0)
if($pf_categorynotin){
$args['tax_query'] = array(
array(
'taxonomy' => array('portfolio_category','portfolio_tags'),
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
); //category__in
}
可以做到这一点
答案 4 :(得分:0)
分类法需要是另一个数组,例如:
$taxonomy = array(tax1, tax2, tax3);
然后你添加
array(
'taxonomy' => $taxonomy,
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)