通过日期元数据订购自定义帖子

时间:2012-02-23 15:41:33

标签: php wordpress custom-post-type

我有一个自定义元数据箱,我用这样的纯文本存储日期:dd/mm/yy现在我需要按照该日期订购帖子。自定义字段称为event_informations_date

<?php
    $args = array( 'post_type' => 'Event','posts_per_page' => 1000 );
    $loop = new WP_Query( $args );
?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>

3 个答案:

答案 0 :(得分:2)

您需要添加

meta_key => 'event_informations_date',
orderby => 'meta_value',
order => 'DESC'

但是,因为您将以纯文本形式存储,所以您将获得字典顺序,而不是按时间顺序排序。例如,你会得到

23/01/2012
22/02/2012
15/12/2011
10/05/2013

这是一个随机日期顺序。我不确定你是否可以克服这个问题,除非你把日期存储为按日期顺序按字典顺序排序的YYYY-MM-DD。

答案 1 :(得分:0)

首先,将日期保存为时间戳。然后,您可以在WP_Query

中执行以下操作
$query = new WP_Query( 
           array ( 
              'orderby' => 'meta_value_num', 
              'meta_key'=> ' event_informations_date'
           )
         );

答案 2 :(得分:0)

解决方案是按meta_value_number

订购
meta_key => 'event_informations_date',
orderby => 'meta_value_number',
order => 'DESC'