3

我正在尝试按日期顺序显示我在 wordpress 中的 meta_key 的自定义帖子。

这是发生事件的自定义帖子,我需要按“即将发生的事件”的顺序显示它们

到目前为止,我的代码是:

$today = date('d/m/y');
$args = array( 
                   'post' => 'ID', 
                   'post_type' => 'foodswaps', 
                   'posts_per_page' => 3, 
                   'meta_key' => '00.event-date',
                   'orderby' => 'meta_value_num', 
                   'order' => 'ASC',
                   'meta_value_num' => $today,
                   'meta_compare' => '>='
            );

结果确实按顺序发布,但仅按天发布。所以它们按以下顺序出现:27/11/13

28/12/13

29/11/13

订单应在以下日期发布:27/11/13

29/11/13

28/12/13

提前致谢!

更新:解释元密钥:

我拥有的 meta_keys 是:

字段名称 | 价值

00.事件日期 | 28/11/13 即 d/m/y

01.app-key | 122334455669

02.user-key | xjsk284k38dj

等等

它们有 00、01、02 等,因此它们以字母数字顺序显示,因为有许多字段可以显示用户需要填写的内容。它们以特定的顺序列出以使其更有用。

4

1 回答 1

3

这是你的解决方案

   $args = array(
         'showposts' => 5, // optional up to you
         'post_type' => 'foodswaps',
         'meta_key' => '00.event-date', // must use correctly, I am little confused why your meta key name like that start with 00, however.
         'orderby' => 'meta_value',
         'meta_query' => array(
               array(
                    'key' => '00.event-date',
                    'value' => date("Y-m-d"),                            
                    'compare' => '>='
                    )
                )
   );

填写元键值 Ymd 即 2013-11-27

于 2013-11-14T18:00:16.943 回答