在随机循环中,是否有一种简单的方法可以说“从类别MyCat 整合发布1到10 ”?我问,因为我不希望随机循环整合我所有类别的帖子。这个脚本存在问题:
NotifySelectionChanged
我需要的是这样的事情:
<?php query_posts(array(
'showposts' => 1,
'orderby' => 'rand',
'category_name' => 'MyCat'
));
if (have_posts()) : while (have_posts()) : the_post(); ?>
有人能帮助我吗?
答案 0 :(得分:1)
您是否尝试过使用get_posts
和posts_per_page
/ numberposts
选项?
<?php
$rand_posts = get_posts(array(
'numberposts' => 10,
'posts_per_page' => 10,
'orderby' => 'rand',
'category_name' => 'MyCat'
));
foreach ( $rand_posts as $post ) {
setup_postdata( $post );
the_post();
}; ?>
根据WordPress,query_posts为inefficient,showposts为may be deprecated
答案 1 :(得分:0)
首先点击Google:https://wordpress.org/support/topic/how-to-get-random-post
<?php query_posts('orderby=rand&showposts=1&cat=75,76,77'); ?>
答案 2 :(得分:0)
您可能正在寻找的是post__in选项:
query_posts(array(
'showposts' => 1,
'orderby' => 'rand',
'category_name' => 'MyCat',
'post__in' => array(1, 2, 3, ...)
));
这允许您定义将包含在查询中的特定帖子ID。
请注意,与category_name
结合使用似乎不合逻辑,因为您可以指定确切的帖子ID。