【发布时间】:2014-07-25 13:27:01
【问题描述】:
我在获取参数数组以在 Wordpress 中按日期对事件列表进行排序时遇到了一些问题。我在 Stack Overflow 和其他地方找到了几个建议的解决方案,但经过大量试验和错误后,似乎没有一个解决方案有效。
这没什么花哨的,它应该比这容易得多。也许它更容易,我只是想多了?非常感谢任何帮助。
我在帖子中使用插件http://www.advancedcustomfields.com 有一个自定义日期字段,数据库中的字段名称是“event_date”。
我尝试了以下各种形式:
$args = array(
'post_status' => 'publish',
'meta_key' => 'event_date',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'posts_per_page' => 6,
'paged' => $paged,
'post__not_in' => $exclude_array
);
$temp = $wp_query;
$wp_query = null;
$wp_query = new WP_Query($args);
$default_excerpt_length = 250;
还有:
$args = array(
'post_status' => 'publish',
'meta_key' => 'event_date',
'meta_value_num' => time(),
'meta_compare' => '>=',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'posts_per_page' => 6,
'paged' => $paged,
'post__not_in' => $exclude_array
);
$temp = $wp_query;
$wp_query = null;
$wp_query = new WP_Query($args);
$default_excerpt_length = 250;
还有:
$today = date('Y-m-d');
query_posts(array(
'post_type' => 'events',
'posts_per_page' => 6,
'paged' => $paged,
'meta_key' => 'event_date',
'orderby' => 'meta_value',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => 'event_date',
'meta-value' => $value,
'value' => $today,
'compare' => '>=',
'type' => 'CHAR'
)
)
));
【问题讨论】: