关闭/打开Div后循环已经3次

时间:2015-01-12 22:48:46

标签: php wordpress loops zurb-foundation counter

我有一个循环,可以在.row div中创建列。在循环运行3次之后,我希望将这些列包装在“row”div中,并为下一组3列创建新的“row”div。

这是循环:

<div class="row">
  <?php if( have_rows('content_modules') ): ?>
    <?php while( have_rows('content_modules') ): the_row(); 
        $photo = get_sub_field('module_photo');
        $title = get_sub_field('module_title');
        $content = get_sub_field('module_content'); ?>

    <div class="columns">
        <img src="<?php echo $photo ?>" />          
        <h3><?php echo $title ?></h3>
        <?php echo $content ?>
    </div>

  <?php endwhile; endif;?>
</div>

这个循环运行得很好,但是,我似乎无法在一行内包装每组3列。

1 个答案:

答案 0 :(得分:3)

使用modulo确定是否应该开始新行。

<?php if( have_rows('content_modules') ): ?>
    <?php
    $i = 0;
    while( have_rows('content_modules') ): the_row();

    $photo = get_sub_field('module_photo');
    $title = get_sub_field('module_title');
    $content = get_sub_field('module_content');
    ?>

        <?php if($i % 3 == 0): ?>
            <div class="row">
        <?php endif; ?>

        <div class="columns">
            <img src="<?php echo $photo ?>" />          
            <h3><?php echo $title ?></h3>
            <?php echo $content ?>
        </div>

        <?php if($i % 3 == 2): ?>
            </div>
        <?php endif; ?>

    <?php $i++; endwhile; endif;?>
<?php endif; ?>