我有一个数组来存储分类法和查询术语,但我不能使用foreach在tax\\u查询中循环我的数组。我拿到了505内线。
$query = array(
\'post_type\' => $post_type,
\'posts_per_page\' => -1,
);
$query[\'tax_query\'] = array(
\'relation\' => \'OR\',
foreach($taxonomy_arr as $t):
array(
\'taxonomy\' => $t[taxonomy],
\'terms\' => $t[value],
\'field\' => \'slug\',
),
endforeach;
);
foreach或查询本身可以正常工作,但在内部循环时无法工作。请给我一些建议。谢谢
最合适的回答,由SO网友:TheDeadMedic 整理而成
这是一个PHP语法错误-不能嵌套foreach
在数组内部,您可以使用它来构建数组:
$query = [
\'post_type\' => $post_type,
\'posts_per_page\' => -1,
\'tax_query\' => [
\'relation\' => \'OR\',
],
];
foreach ( $taxonomy_arr as $t ) {
$query[\'tax_query\'][] = [
\'taxonomy\' => $t[\'taxonomy\'],
\'terms\' => $t[\'value\'],
\'field\' => \'slug\',
];
}