WP_query与数组中的多个值不匹配

时间:2017-12-08 10:47:40

标签: php mysql wordpress

目前我正在打破一个WP_query,但这并没有给我正确的结果。

我要做的是根据存储在数组中的值来生成结果。

请参阅以下代码;

// Array contents:

// $size_array = Array
// (
//   [0] => 7
//   [1] => 4
//   [2] => 2
//  )

// $color_array : 
// Array
// (
//   [0] => red
//   [1] => blue
//   [2] => orange
// )

    $args = array(
    'numberposts'   => -1,
    'post_type'     => 'rondreizen',
    'meta_query'    => array(   
        'relation'      => 'AND',
        array(
            'key'       => ‘size’,
            'value'     => $size_array,
            'compare'   => 'LIKE'
        ),
        array(
            'key'       => ‘color’,
            'value'     => $color_array,
            'compare'   => 'LIKE'
        )
    ),
    'orderby'           => 'date',
    'order'             => 'DESC'
); 

$shoes = new WP_Query( $args );
$posts = $shoes->posts;

foreach($posts as $post) {

}

我试图得到一个匹配1个或更多值的结果。例如:4号鞋和橙色鞋。

目前,当我在阵列中只有一个项目时,我只得到一个结果。我还尝试了'IN'比较方法。但这也没有给我任何结果。

我试图尽可能清楚地描述这个问题。希望有人能帮助我。 : - )

如果您有任何其他问题,请与我们联系。

1 个答案:

答案 0 :(得分:0)

$args = array(
    'numberposts'   => -1,
    'post_type'     => 'rondreizen',
    'meta_query'    => array(   
        'relation'      => 'AND',
        array(
            'key'       => ‘size’,
            'value'     => $size_array
        ),
        array(
            'key'       => ‘color’,
            'operator'  => IN,
            'value'     => $color_array
        )
    ),
    'orderby'           => 'date',
    'order'             => 'DESC'
); 

$shoes = new WP_Query( $args );
$posts = $shoes->posts;

foreach($posts as $post) {

}