我们控制文章数量时有个标准做法是通过 posts_per_page 来限定文章数量,下面的这个方法是通过在 while 循环中添加判断条件来控制文章数量。
首先要设定 posts_per_page 为-1,即循环出所有文章。否则,循环最大数量会受制于后台设定中设置的最大文章数。
在 while 循环中写入最大循环数的条件。
每次循环后,变量需要递增。如下例子:$max_posts++
<?php
$args = array(‘post_type’ => ‘news’,‘posts_per_page’=>‘-1’);
$query_news = new WP_Query($args);
if ($query_news–>have_posts()):
$max_posts = 1;
while (($query_news–>have_posts())&&($max_posts<6)): ?>
<h1><?php the_title(); ?></h1>
<?php
$max_posts++;
endwhile;
wp_reset_postdata();
endif;
?>
那么有人会问,posts_per_page 就可以满足条件,为什么还要多此一举?原因是在实际项目中会遇到循环中套循环,有多重循环的问题。这种写法可以让功能的实现更加灵活。
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!