如何使用WP_Query随机化数组

时间:2014-08-05 11:13:09

标签: sql wordpress

如何获得最新的投资组合帖子然后将其随机化?

$args = array('numberposts' => 8,'post_type' => 'portfolio','orderby'=> 'id','order' => 'desc');

// get results
$the_query = new WP_Query( $args );

1 个答案:

答案 0 :(得分:2)

而不是'orderby'=> 'id',请尝试'orderby'=> 'rand'

来源:http://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters

您可能还应该指定'posts_per_page' => 8而不是numberposts

但也许你想要8个最新帖子,然后随机选择8个中的一个。如果是这样,这可能有效:(并指定orderby =>'ID'[大写字母])

$posts = $the_query->get_posts();
$rand_key = array_rand($posts);

然后$posts[$rand_key]将随机选择8个帖子中的一个。

最后,如果您想要随机排列8条最新帖子,请尝试以下方法:

$posts = $the_query->get_posts();
shuffle($posts)