WP_Query()显示比今天晚结束的帖子

时间:2012-07-10 作者:Sweepster

我的问题如下:

$wp_query = new WP_Query( 
   \'meta_key\'     => \'end_date\', 
   \'meta_value\'   => \'today\', 
   \'meta_compare\' => \'>=\', 
   \'post_type\'    => \'vehicle\' 
);
我只想显示那些具有meta key end\\u日期的车辆帖子类型的帖子,该日期包含的日期晚于今天的日期。

如何做到这一点?

2 个回复
最合适的回答,由SO网友:Milo 整理而成

首先,日期格式必须从大到小按降序排列,即年、月、日、时、分、秒等,否则MySQL无法在字段上查询或排序。在本例中,我使用年-月-日:

$today = date( \'Y-m-d\' );
$args = array(
    \'post_type\' => \'vehicle\',
    \'meta_query\' => array(
        array(
            \'key\' => \'end_date\',
            \'value\' => $today,
            \'compare\' => \'>=\',
            \'type\' => \'DATE\'
        )
    )
):
$query = new WP_Query( $args );

SO网友:Eric K

WordPress在3.7中添加了日期查询。因此,您可以随时尝试:

$today = date( \'Y-m-d\' );
$args = array(
    \'post_type\' => \'vehicle\',
    \'date_query\' => array(
        //set date ranges with strings!
        \'after\' => \'today\',
        //allow exact matches to be returned
        \'inclusive\'         => true,
    ),
);
$query = new WP_Query( $args );
有关这方面的更多信息,请访问https://codex.wordpress.org/Class_Reference/WP_Query#Date_Parameters

结束

相关推荐

My title won't update

无论我进入设置多少次,更新我的网站标题,它都保持不变。并且不更新?我尝试过清除缓存、卸载旧主题、搜索源文件,但不知道为什么——我的标题就是不会更新。有什么建议吗?