好的,我使用get\\u posts&;query\\u posts返回每个:posts和case studies的数组。然后array\\u将它们合并(感谢heads up EAMann),然后使用带有自定义比较函数的uasort()按post\\u日期对它们进行排序。
这并不是最有吸引力的解决方案,但既然它可以工作,而且我最多只能从每个查询返回5篇帖子,那就可以了。
// Collect posts
$news = get_posts();
$cs = query_posts( array(
\'post_type\' => \'case-studies\',
\'meta_key\' => \'_homeslide\',
\'meta_value\' => \'true\'
));
// Merge the two arrays
$vslides = array_merge($news, $cs);
// Function to compare array elements using post_date
function compare($x, $y) {
if ( strtotime($x->post_date) == strtotime($y->post_date) )
return 0;
else if ( strtotime($x->post_date) > strtotime($y->post_date) )
return -1;
else
return 1;
}
// Sort by post_date
uasort($vslides, \'compare\');