Loop inside query

时间:2017-08-21 作者:Yoona

我有一个数组来存储分类法和查询术语,但我不能使用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或查询本身可以正常工作,但在内部循环时无法工作。请给我一些建议。谢谢

1 个回复
最合适的回答,由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\',
    ];
}

结束

相关推荐

MySQL variable in query

当我需要显示每笔交易的运行余额时,我有租户门户。这是我写的查询,它完成了我需要它做的事情。我的问题是它在Wordpress中不起作用。这是我的代码:if (is_user_logged_in()) { $user = wp_get_current_user(); $balance = $wpdb->query( $wpdb->prepare( set @csum := \"SELECT current_balance FROM exp_ten WHE