PHP Wordpress税务查询:在WP_查询数组中循环信息
我试图创建一个函数来处理显示产品的多个分类要求。我警告你,这是一篇很长的文章,因为我已经展示了解决方案的迭代 上面的链接是一个基本的示例,我正试图对代码进行建模 我使用这个方向是因为我有自定义分类的自定义帖子。除非我已经获取了数组的值,并希望根据用户的请求生成它们 类似这样的数组被传递给函数以请求POSTPHP Wordpress税务查询:在WP_查询数组中循环信息,php,wordpress,multidimensional-array,implode,custom-taxonomy,Php,Wordpress,Multidimensional Array,Implode,Custom Taxonomy,我试图创建一个函数来处理显示产品的多个分类要求。我警告你,这是一篇很长的文章,因为我已经展示了解决方案的迭代 上面的链接是一个基本的示例,我正试图对代码进行建模 我使用这个方向是因为我有自定义分类的自定义帖子。除非我已经获取了数组的值,并希望根据用户的请求生成它们 类似这样的数组被传递给函数以请求POST $requirements = array( array( 'taxonomy' =>'category', 'term' =>'
$requirements = array(
array(
'taxonomy' =>'category',
'term' =>'cheese'
),
array(
'taxonomy' =>'dairy',
'term' =>'yogurt'
),
);
我试图使用它,但不能在数组中foreach。这就是我对解决方案的看法。即使我知道这是错误的
function query_mult_tax($array){
$myquery['tax_query'] = array(
'relation' => 'OR',
foreach($array as $param){
array(
'taxonomy' => $param["taxonomy"],
'terms' => $param["term"],
'field' => 'slug',
);
}
);
query_posts($myquery);}
经过一些修补,我发现我可以在数组之外进行foreach,但是传递信息的唯一方法是在数组中。但是,当前函数总是使用不需要的数组来编写查询,从而扭曲所需的信息。这让我陷入了困境,因为我不知道如何在父数组中转义不需要的数组(因为我无法循环出它)
查询转储的挑战部分如下所示:
[tax_query] => Array
(
[relation] => OR
[0] => Array
(
[0] => Array
(
[taxonomy] => category
[terms] => cheese
[field] => slug
[operator] => IN
)
[1] => Array
(
[taxonomy] => dairy
[terms] => yogurt
[field] => slug
[operator] => IN
)
)
)
而不是这个,这才是有效的
[tax_query] => Array
(
[relation] => AND
[0] => Array
(
[taxonomy] => category
[terms] => cheese
[field] => slug
[operator] => IN
)
[1] => Array
(
[taxonomy] => dariy
[terms] => yogurt
[field] => slug
[operator] => IN
)
)
这是非常接近的,除了包裹在一个数组中。我该如何转义或格式化?我不能通过foreach这样做,因为我在父数组中。我尝试了
$args[0]
,它只为我提供了关于可能有很多规则的第一组规则。经过一段时间的修补,我找到了它。在税务查询建成后,我需要对其进行验证
function fruit_query_mult_tax($array){
wp_reset_query();
$query = array('post_type' => 'fruit',
'tax_query' => array()
);
$query['tax_query'] = array(
'relation' => 'AND',
);
foreach($array as $param){
$query['tax_query'][]= array(
'taxonomy' => $param["taxonomy"],
'terms' => $param["term"],
'field' => 'slug',
'operator' => "IN",
);
}
$result = new WP_Query($query);
return $result;}
希望这能帮助其他尝试类似多情况税务查询的人
function fruit_query_mult_tax($array){
wp_reset_query();
$query = array('post_type' => 'fruit',
'tax_query' => array()
);
$query['tax_query'] = array(
'relation' => 'AND',
);
foreach($array as $param){
$query['tax_query'][]= array(
'taxonomy' => $param["taxonomy"],
'terms' => $param["term"],
'field' => 'slug',
'operator' => "IN",
);
}
$result = new WP_Query($query);
return $result;}