Php 在数组中添加元素
我有以下代码:Php 在数组中添加元素,php,arrays,wordpress,taxonomy,Php,Arrays,Wordpress,Taxonomy,我有以下代码: if($pf_categorynotin){ $args['tax_query'] = array( array( 'taxonomy' => 'portfolio_category', 'field' => 'slug', 'terms' => $pf_categorynotin, 'operator' => 'NOT IN'
if($pf_categorynotin){
$args['tax_query'] = array(
array(
'taxonomy' => 'portfolio_category',
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
); //category__in
}
它定义了一个分类法,即公文包标签。
我想做的是添加另一个分类法,如portfolio\u tag
我不确定是否会这样工作:'taxonomy'=>'portfolio\u category','portfolio\u tags',
基本上,我想做的是在该数组中添加另一个分类法 如果需要多个值,则必须使用数组,因此请替换以下行:
'taxonomy' => 'portfolio_category',
对于这一个:
'taxonomy' => array('portfolio_category','portfolio_tags'),
但是请记住,读取
$args['tax\u query']
的代码必须进行调整,以考虑到$args['tax\u query'][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\u query'][0]['taxonomy'][0]
将成为'portfolio\u category'
,$args['tax\u query'][0]['taxonomy'][1]
将成为'portfolio\u tags'
if($pf_categorynotin){
$args['tax_query'] = array(
array(
'taxonomy' => array('portfolio_category','portfolio_tags'),
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
); //category__in
}
可以做到这一点分类法需要另一个数组,例如:
$taxonomy = array(tax1, tax2, tax3);
然后你加上
array(
'taxonomy' => $taxonomy,
'field' => 'slug',
'terms' => $pf_categorynotin,
'operator' => 'NOT IN'
)
这里看一看“多分类处理”示例:
您应该调整关系
和运算符
以满足您的需要。您应该编辑您的问题,以解释此数组将用作WP\u查询的参数
$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'
)
);