我想在一个新的行(div)中包含每三个帖子,页面上总共有九个帖子。最后有一排空行。我认为这个(I need to wrap every 4 wordpress posts in a div)会起作用,但我在第2,3,4等页面上有更多帖子。下面是我的代码的简化版本。 $ i = 1。
<div class="row">
<?php while ( have_posts() ) : the_post(); ?>
<div class="column">
</div>
<?php if ($i % 3 == 0 ) : ?>
</div> <!-- .row -->
<div class="row">
<?php endif; $i++; ?>
<?php endwhile; ?>
</div> <!-- .row -->
答案 0 :(得分:2)
您可以使用get_next_post()检查下一篇文章是否存在。
<?php if ($i % 3 == 0 ) : ?>
</div> <!-- .row -->
<?php
$next_post = get_next_post();
if (!empty( $next_post )): ?>
<div class="row">
<?php endif; ?>
答案 1 :(得分:0)
我使用这篇文章(https://www.nosegraze.com/display-wordpress-posts-2-3-columns/)来解决我的问题。
$ i = 0;
<?php while ( have_posts() ) : the_post(); ?>
<?php if ( $i == 0 ) : ?>
<div class="row">
<?php endif; ?>
<div class="column">
</div> <!-- .column -->
<?php
$i++;
if( $i == 3 ) :
$i = 0; ?>
</div> <!-- .row -->
<?php endif; ?>
<?php endwhile; ?>
<?php if ( $i > 0 ) : ?>
</div> <!-- .row -->
<?php endif; ?>