我想有一个查询,返回按五个五个分组的帖子。
现在,我有一个简单的查询循环,如下所示:
<?php if( $query->have_posts() ) : ?>
<ul class="posts">
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
<li>
<?php the_title(); ?>
</li>
<?php endwhile; ?>
</ul>
<?php endif; ?>
它输出:
<ul class="posts">
<li>post 1</li>
<li>post 2</li>
<li>post 3</li>
<li>post 4</li>
<li>post 5</li>
<li>post 6</li>
<li>post 7</li>
<li>post 8</li>
<li>post 9</li>
<li>post 10</li>
</ul>
相反,我想要的是:
<ul class="posts">
<li>post 1</li>
<li>post 2</li>
<li>post 3</li>
<li>post 4</li>
<li>post 5</li>
</ul>
<ul class="posts">
<li>post 6</li>
<li>post 7</li>
<li>post 8</li>
<li>post 9</li>
<li>post 10</li>
</ul>
如何做到这一点?
最合适的回答,由SO网友:Bainternet 整理而成
您可以创建一个简单的计数器和条件:
<?php $count = 0; ?>
<?php if( $query->have_posts() ) : ?>
<ul class="posts">
<?php while ( $query->have_posts() ) : $query->the_post();
if ($count < 5){
?>
<li>
<?php the_title(); ?>
</li>
<?php
}else{
echo \'</ul><ul class="posts">\';
?>
<li>
<?php the_title(); ?>
</li>
<?php
$count = 0;
}
$count = $count + 1;
<?php endwhile; ?>
</ul>
<?php endif; ?>