我们控制文章数量时有个标准做法是通过posts_per_page来限定文章数量。
下面的这个方法是通过在while循环中添加判断条件来控制文章数量。
代码简述:
- 首先要设定posts_per_page为-1,即循环出所有文章。否则,循环最大数量会受制于后台设定中设置的最大文章数。
- 在while循环中写入最大循环数的条件。
- 每次循环后,变量需要递增。如下例子:$max_posts++
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?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就可以满足条件,为什么还要多此一举?
原因是在实际项目中会遇到循环中套循环,有多重循环的问题。这种写法可以让功能的实现更加灵活。