Wordpress meta_query多个字段搜索不起作用

时间:2013-09-13 16:02:05

标签: php custom-post-type wordpress

我有这段代码,它运作得很好:

$search = array(
    'meta_query'             => array(
        array(
            'key'       => 'wpcf-community-city',
            'value'     => $search_param,
            'compare'   => 'LIKE'
        )
    )
);

但是当我改变它时,它就会停止工作。

$search = array(
    'meta_query'             => array(
        'relation'      => 'OR',
        array(
            'key'       => 'wpcf-community-city',
            'value'     => $search_param,
            'compare'   => 'LIKE'
        ),
        array(
            'key'       => 'wpcf-community-state',
            'value'     => $search_param,
            'compare'   => 'LIKE'
        ),
        array(
            'key'       => 'wpcf-community-zip',
            'value'     => $search_param,
            'compare'   => 'LIKE'
        )
     )
  );

我正在使用Wordpress 3.4.2

PS:这段代码是query_posts()参数的一部分。

1 个答案:

答案 0 :(得分:0)

为什么你不使用WP_Query? 你需要使用'relation'参数?

使用此示例..其工作:

'meta_query' => array(
    array(
    'key' => 'color',
    'value' => 'blue',
    'type' => 'CHAR',
    'compare' => '=' //'=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN'
    ),
    array(
        'key' => 'price',
        'value' => array( 1,200 ),
        'compare' => 'NOT LIKE'
    )
),