我在wordpress上有一个页面,我想要显示10个随机帖子。它正在使用该代码:
<?php if ( have_posts() ) : ?>
<?php twentyeleven_content_nav( 'nav-above' ); ?>
<?php /* Start the Loop */
query_posts( 'orderby=rand&posts_per_page=10' );
?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() ); ?>
<?php endwhile; ?>
[...]
我想在该页面上禁用分页,如果我使用 nopaging = true 禁用分页,则会显示所有帖子。如何在限制帖子数量的同时设置限制?
答案 0 :(得分:3)
首先,您应该将query_posts
的调用置于have_posts
的if语句之外。
简而言之,您基本上已经使用query_posts调用“禁用”了分页。您根本没有删除允许用户“分页”的链接(twentyeleven_content_nav
s)。事实上,用户根本不会真正改变页面。让我解释一下......
页面加载时,随机选择10个帖子。目前,链接显示(因为WordPress知道可以显示超过10个帖子,据我所知,除非你使用get_posts
,否则没有办法告诉它
无论如何,如果用户点击下一页,页面会再次加载 - 但实际上您查询会覆盖他们的'page-2'请求,并显示前10个随机帖子。但这些帖子与原作不同,因为它是随机的。
简而言之,分页链接实际上只是刷新页面,显示10个新的随机帖子:尽管网址表明他们正在浏览页面。
总之,只需删除链接!