如何向php循环(wordpress)中的每个第n项添加一个类

如何向php循环(wordpress)中的每个第n项添加一个类,php,css,wordpress,loops,Php,Css,Wordpress,Loops,我有一个Wordpress循环,如下所示: <?php $loop = new WP_Query( array( 'post_type' => 'portfolio' ) ); ?> <?php while ( $loop->have_posts() ) : $loop->the_post(); ?> <div class="four columns"> <?php the_content(); //al

我有一个Wordpress循环,如下所示:

<?php $loop = new WP_Query( array( 'post_type' => 'portfolio' ) ); ?>
    <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
    <div class="four columns">
        <?php the_content(); //along with other stuff in looped div ?>
    </div>
<?php endwhile ?>

如何使用php将“alpha”类添加到每个第(4n-3)个div(div.four.columns)中,并将“omega”类添加到每个第(4n)个项目中

非常感谢,
Jamie

为什么不添加一个计数器,并使用模数法来了解每一列中当前回声的元素

假设您有指定的4列。
您可以从计数器=1开始
1%4=1(您在第一个元素中)
2%4=2(您在第二个元素中)
3%4=3(您在第三个元素中)
4%4=0(您在第四个元素中)
5%4=1(您在第一个元素中)
6%4=2(您在第二个元素中)

您只需对类使用If语句,如下所示

<?php $counter = 1 ?>
<?php $loop = new WP_Query( array( 'post_type' => 'portfolio' ) ); ?>
    <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
    <div class="four columns <?php if ($counter % 4 == 1){echo 'alpha'}else if ($counter % 4 == 0){echo 'omega'} ?>">
        <?php the_content(); //along with other stuff in looped div ?>
    </div>
<?php $counter++ ; 
endwhile ?>


所提意见的执行情况:

<?php $loop = new WP_Query( array( 'post_type' => 'portfolio' ) ); ?>
    <?php
        $i = 0;
        while ( $loop->have_posts() ) : $loop->the_post(); 
           if( $i % 4 == 0 )
             $class = 'omega';
           else
             $class = ''; 
        ?>
    <div class="four columns <?php echo $class ?>">
        <?php 
           the_content(); // Along with other stuff in looped div
           $i++;
        ?>
    </div>
<?php endwhile ?>


保留一个计数器,从0开始,每个循环递增1。如果
计数器%3==0
则为“每隔三次循环”。同样,“每四次循环”的计数器%4==0。根据需要做额外的数学运算。但您不会在每个循环上重置
$class
。一次
$class='omega'发生时,
$class
将始终为
omega
<代码>$class=''应该在while循环中。