WordPress:从两个数字之间的meta_query获取结果

时间:2016-01-24 13:41:59

标签: wordpress

我有价值: -

    if ( ! empty( $_GET['filter-area'] ) ) {
        $f = $_GET['filter-area'];
        preg_match_all('!\d+!', $f, $matches);
        foreach($matches as $key) {
        $first_val = $key[0];
        $second_val = $key[1];
        }
    }

现在我需要搜索以获得这个拖曳值之间的所有日期。

所以,这种方式是Itry,但它取一个值。

if ( ! empty( $_GET['filter-area'] ) ) {
    $meta[] = array(
        'key'       => REALIA_PROPERTY_PREFIX . 'attributes_area',
        'value'     => $first_val,
        'compare'   => '>=',
        'type'      => 'NUMERIC',
    );
}

如何通过拖曳值进行搜索

1 个答案:

答案 0 :(得分:1)

根据codex,您可以使用

$args = array(
   'meta_query' => array(
       array(
         'key'     => REALIA_PROPERTY_PREFIX . 'attributes_area',
         'value'   => array( $first_val, $second_val)
         'compare' => 'BETWEEN',
         'type'    => 'NUMERIC', 
       ),
    ),
);

或者这个

 $args = array(
   'meta_query' => array(
       'relation' => 'AND',
       array(
         'key'     => REALIA_PROPERTY_PREFIX . 'attributes_area',
         'value'   => $first_val
         'compare' => '>=',
         'type'    => 'NUMERIC', 
       ),
       array(
         'key'     => REALIA_PROPERTY_PREFIX . 'attributes_area',
         'value'   => $second_val
         'compare' => '<=',
         'type'    => 'NUMERIC', 
       ),
    ),
);

$query = new WP_Query( $args );

WP_Query