根据ACF日期时间值从阵列中删除自定义帖子类型的帖子

时间:2017-10-03 09:39:48

标签: php wordpress advanced-custom-fields

我想按照ACF中的日期时间字段显示帖子。我的帖子进行了排序,以便最接近今天的日期是列表中的第一个日期,过去的日期是帖子,该帖子不包含在数组中。

我尝试了我能在这里找到的不同解决方案,但没有运气。

我的代码是什么样的:

PHP代码: -

$today = date('Y-m-d H:i:s');

$posts = get_posts(array(
    'posts_per_page'    => -1,
    'post_type'         => 'arrangement',
    'meta_query'    => array(
                    array(
                        'key'       => 'date',
                        'compare'   => '>=',
                        'value'     => $today,
                    'type'  => 'DATETIME',
                    )
            ),
    'order'             => 'ASC',
    'orderby'           => 'meta_value_num',
    'meta_key'          => 'date',
    'meta_type'         => 'DATE'
));

当我显示帖子时:

<?php while ( have_posts() ) : the_post(); ?>

编辑:使用上面的代码,过去有日期的帖子会显示在while循环中,但不会显示帖子中的数据。

1 个答案:

答案 0 :(得分:0)

如果我没记错的话,ACF会在内部将日期时间字段保存为时间戳,因此您必须将元查询更改为数字比较并使用time()而不是格式化的日期时间。