在get_posts中按日期自定义元框值排序
问题描述:
I need to order posts by custom meta box date field
$args = array(
'meta_key' => 'event_date',
'orderby' => 'meta_value_num',
'order' => 'ASC',
'post_status' => 'publish',
'post_type' => 'events',
'numberposts' => -1
);
$poslist= get_posts( $args );
I tried above code but its not working, date filed format is "yyyy-mm-dd"
我需要按自定义元框日期字段订购帖子 p>
$ args = array(
'meta_key'=>'event_date',
'orderby'=>'meta_value_num',
'order'=>'ASC',
'post_status'=> 'publish',
'post_type'=>'events',
'numberposts'=> -1
);
$ poslist = get_posts($ args);
code> pre >
我尝试了上面的代码,但它不起作用,
date归档格式为“yyyy-mm-dd” p>
div>
答
$fromDate = '2013-01-01';
$toDate = '2014-01-01';
$args = array(
'meta_key' => 'event_date',
'orderby' => 'meta_value',
'order' => 'DESC',
'post_status' => 'publish',
'post_type' => 'page',
'numberposts' => -1,
'meta_query' => array( array(
'key' => 'event_date',
'value' => $toDate, // date to compare to, before this one
'compare' => '<',
'type' => 'DATE' //set the format
),
array(
'key' => 'event_date',
'value' => $fromDate, // date to compare to, after this one
'compare' => '>=',
'type' => 'DATE' //set the format
),
),
);
$currentEventsPost = get_posts( $args );
答
Try something along the lines of
$args = array(
'post_type' => 'events',
'meta_key' => 'event_date',
'orderby' => 'meta_value',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => 'event_date',
'compare' => 'LIKE',
)
)
);
$query = new WP_Query($args);