Wordpress在多个条件下发布查询

时间:2015-10-02 10:43:25

标签: php wordpress

我有以下功能,只返回未来事件,效果很好:

$args = array(
    'post_type'      => self::POST_TYPE,
    'posts_per_page' => $posts_per_page,
    'meta_key'       => 'start_date',
    'orderby'        => 'meta_value_num',
    'order'          => 'ASC',
    'status'         => 'publish',
    'meta_query'     => array(
      array(
        'key' => 'start_date',
        'value' => date('Ymd'),
        'compare' => '>=',
        'type' => 'DATE'
      )
    )
  );

我遇到的问题是,我还需要检查是否已经设置了名为“post_is_global”的自定义字段(顺便说一下,类型是BOOL),但我不知道如何在此查询中实现它。任何帮助将不胜感激。

非常感谢!

1 个答案:

答案 0 :(得分:1)

查询应该看起来像这样:

$args = array(

    ...

    'meta_query' => array(
        'relation' => 'AND',
         array(
            'key' => 'start_date',
            'value' => date('Ymd'),
            'compare' => '>=',
            'type' => 'DATE'
        ),
        array(
            'key' => 'post_is_global',
            'value' => '1',
            'compare' => '=',
        ),
    )
);

$query = new WP_Query($args);

参考文献: