PHP Wordpress 循环中的嵌套条件不起作用
Nested conditional in PHP Wordpress loop not working
我不太熟悉PHP。我想在 WP 循环中插入一个条件语句,以便每三分之一 post 创建一个新的 div,并将 post 插入到 div 中。这是我到目前为止的代码:
<?php $x = 0; ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if (($x == 0) || ($x % 3 == 0)) ?>
<div class="section group">
<div class="col span_1_of_3"> //column is 1/3 of the page
<?php the_content(); ?>
</div>
</div>
<?php $x += 1; ?>
<?php endwhile; else : ?>
<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
我正在用 4 posts 测试它,而不是用前三个 posts 创建一个三列部分然后开始下一部分,我得到四个单独的部分.可能是微不足道的错误,但我似乎无法弄清楚!
您需要稍微更改您的逻辑,因为现在您要在同一个块中显示内容以及您的部分的打开和关闭。
除此之外,您还有一个错误:由于您在内部 if
语句之后没有 :
或 {
,因此它变成了一个空语句。
你需要这样的东西:
<div class="section group">
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if ($x > 0 && $x % 3 === 0): ?>
^ very important
</div>
<div class="section group">
<?php endif; ?>
<div class="col span_1_of_3"> //column is 1/3 of the page
<?php the_content(); ?>
</div>
<?php $x += 1; ?>
<?php endwhile; else : ?>
<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
</div>
现在,如果您的内部 if
匹配并且条件确实有效,您就可以关闭并打开一个新部分。
我不太熟悉PHP。我想在 WP 循环中插入一个条件语句,以便每三分之一 post 创建一个新的 div,并将 post 插入到 div 中。这是我到目前为止的代码:
<?php $x = 0; ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if (($x == 0) || ($x % 3 == 0)) ?>
<div class="section group">
<div class="col span_1_of_3"> //column is 1/3 of the page
<?php the_content(); ?>
</div>
</div>
<?php $x += 1; ?>
<?php endwhile; else : ?>
<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
我正在用 4 posts 测试它,而不是用前三个 posts 创建一个三列部分然后开始下一部分,我得到四个单独的部分.可能是微不足道的错误,但我似乎无法弄清楚!
您需要稍微更改您的逻辑,因为现在您要在同一个块中显示内容以及您的部分的打开和关闭。
除此之外,您还有一个错误:由于您在内部 if
语句之后没有 :
或 {
,因此它变成了一个空语句。
你需要这样的东西:
<div class="section group">
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if ($x > 0 && $x % 3 === 0): ?>
^ very important
</div>
<div class="section group">
<?php endif; ?>
<div class="col span_1_of_3"> //column is 1/3 of the page
<?php the_content(); ?>
</div>
<?php $x += 1; ?>
<?php endwhile; else : ?>
<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
</div>
现在,如果您的内部 if
匹配并且条件确实有效,您就可以关闭并打开一个新部分。