我已经写了一个wp查询,我想以一种有点复杂的方式进行排序。有些帖子有一个元值“the\\u date”,它是帖子的结束日期。我想在日期和时间顺序的职位,如果有一个结束日期,这将是参考无论如何是没有结束日期发布日期将是参考。有了这些信息,我需要按最接近当前日期和时间的时间来订购帖子。例如:
职位:
ID Name Publish_date Meta_end_date
1 Post 1 15/05/2013 10:00
2 Post 2 15/05/2013 09:00 17/05/2013 14:20
3 Post 3 16/05/2013 13:00 20/05/2013 08:00
4 Post 4 17/05/2013 13:50
当前时间:2013年5月17日14:00
结果顺序:
Post 4 (17/05/2013 13:50),
Post 2 (17/05/2013 14:20),
Post 1 (15/05/2013 10:00),
Post 3 (20/05/2013 08:00)
以下是我当前的查询:
$args = array(
\'post_type\' => \'post\',
\'numberposts\' => \'30\',
\'meta_query\' => array(
\'relation\' => \'OR\',
array(
\'key\' => \'the_date\',
\'value\' => $today,
\'compare\' => \'>\',
\'type\'=> \'DATETIME\'
),
array(
\'key\' => \'the_date\',
\'value\' => \'\',
\'compare\' => \'=\',
)
),
\'orderby\' => \'post_date\',
\'order\' => \'ASC\',
\'orderby\' => \'meta_value_num\',
\'order\' => \'DESC\'
);
欢迎任何帮助:)