根据自定义域日期仅显示归档中的未来帖子

时间:2015-10-01 作者:Mayank

我在存档页面中显示自定义帖子。每个自定义帖子都是偶数,它有一个名为“show\\u date”的自定义字段。这些事件根据“show\\u date”列在存档中。

问题是,我只想显示未来的事件,但根据下面的代码,我无法这样做。

$args = array(
    \'post_type\' => \'esitykset\',
    \'meta_key\' => \'show_date\',
    \'orderby\' => \'meta_value\',
    \'order\' => \'ASC\',
    \'meta_compare\' =>\'>=\',
    \'meta_value\'=>time(),
    \'posts_per_page\' => 20,
    \'paged\' => get_query_var(\'paged\')
);
我找到了答案,但添加了一些过去在这里发布的问题的代码。

有效的新代码是:

$current_date = date(\'Y-m-d\'); // Get the current date in the same format as date fields normally store in db
$args = array(
    \'post_type\' => \'esitykset\',
    \'meta_key\' => \'show_date\',
    \'orderby\' => \'show_date\',
    \'order\' => \'ASC\',
    \'meta_query\' => array(
        array(
            \'key\' => \'show_date\',
            \'value\' => $current_date,
            \'compare\' => \'>=\', //Compare $current_date with _event_start_date and show only the post with a date after or equal $current_date
            \'type\' => \'DATE\',
        ),
    ),
    \'posts_per_page\' => 20,
    \'paged\' => get_query_var(\'paged\')
);

1 个回复
SO网友:Krzysiek Dróżdż

这里的问题是,很可能您将日期存储在CF中show_date “YYYY-mm-dd”格式。

在比较中必须使用相同的格式。。。

像这样的方法应该可以很好地工作:

$args = array(
    \'post_type\' => \'esitykset\',
    \'meta_key\' => \'show_date\',
    \'orderby\' => \'meta_value\',
    \'order\' => \'ASC\',
    \'meta_compare\' =>\'>=\',
    \'meta_value\' => date(\'Y-m-d\'),
    \'posts_per_page\' => 20,
    \'paged\' => get_query_var(\'paged\')
);

相关推荐