WP_Query meta_query >= date

时间:2019-01-06 作者:Ludo

我已经尝试了几个小时,我的查询无法运行:display only posts (from custom post type) with a field (Advanced Custom Fields date picker) value that is more than today.

echo date(\'d-m-Y\'); 打印与posts输出相同的日期格式the_field(\'datum_event\'); : 2019年1月6日

$args = array(
    \'post_type\'  => \'agenda\',
    \'meta_query\' => array(
        array(
            \'key\'     => \'datum_event\',
            \'value\'   => \'06-01-2019\',
            \'compare\' => \'>=\'
        )
    ),
    );
$loop = new WP_Query( $args );
缺少什么?

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

缺少什么?一个小细节。。。这很容易被忽视。。。

the_field(\'datum_event\');
使用“字段设置”中定义的格式打印字段。但是它与该字段的值如何存储在DB中无关。ACF使用YYYYMMDD 在DB中存储日期值时设置格式。WP\\U查询不使用字段格式,因为它直接在DB中查找。

因此,您必须在WP\\U查询中使用其他/原始格式:

$args = array(
    \'post_type\'  => \'agenda\',
    \'meta_query\' => array(
        array(
            \'key\'     => \'datum_event\',
            \'value\'   => \'20190106\',
            \'compare\' => \'>=\'
        )
    ),
);
$loop = new WP_Query( $args );

相关推荐

WordPress使用AJAX的UPDATE_USER_META onClick按钮

我有一个按钮,限制为7次单击,当单击数字5被禁用时,我的问题是,如果用户从不同的设备登录,计数将从0开始,与刷新页面相同。我的需要是,在user\\u meta中保存单击编号结果,如果再次单击,则更新,直到单击编号5,按钮更改为禁用。在DB user\\u meta info中:user\\u id:user\\u idmeta\\u键:clickCounterTravmeta\\u值:1(单击次数)这是页面加载时的代码,如果单击次数大于,则禁用按钮;4.Do Not Work:<script>