Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php WordPress高级自定义字段转发器,每3个div换行一次_Php_Wordpress_Advanced Custom Fields - Fatal编程技术网

Php WordPress高级自定义字段转发器,每3个div换行一次

Php WordPress高级自定义字段转发器,每3个div换行一次,php,wordpress,advanced-custom-fields,Php,Wordpress,Advanced Custom Fields,我使用的是高级自定义字段,我想将每3个div换行。如果有第四个div或2个额外的div,那么这些div将被包装在自己的行中。因此,以一行打开和关闭 我当前有基本输出,但我当前添加计数器的所有尝试均失败。任何帮助都将不胜感激 <?php // wrap every 3 divs in a row if(get_field('triple_column_2')): ?> <?php while(has_sub_field('triple_column_2')

我使用的是高级自定义字段,我想将每3个div换行。如果有第四个div或2个额外的div,那么这些div将被包装在自己的行中。因此,以一行打开和关闭

我当前有基本输出,但我当前添加计数器的所有尝试均失败。任何帮助都将不胜感激

<?php // wrap every 3 divs in a row

     if(get_field('triple_column_2')): ?>

     <?php while(has_sub_field('triple_column_2')):  ?>

            <div class="col-sm-4">
              <?php the_sub_field('copy'); ?>
            </div>

      <?php endwhile; ?>

     <?php endif; ?>

您可以将此作为起点。我还没有测试过它,所以我的逻辑可能会有一些小问题,但如果不是一直都这样的话,这会让你在大部分方面都达到目的

if ( get_field( 'triple_column_2' ) ): ?>

    <?php $index = 1; ?>
    <?php $totalNum = count( get_field('triple_column_2') ); ?>

    <row>
    <?php while ( has_sub_field( 'triple_column_2' ) ): ?>


        <div class="col-sm-4">
            <?php the_sub_field( 'copy' ); ?>
        </div>
        <? if ($index % 3 == 0) : ?>
            <? if ($index < $totalNum) : ?>
                // more rows, so close this one and start a new one
                </row>
                <row>
            <? elseif ($index == $totalNum) : ?>
                // last element so close row but don't start a new one
                </row>
            <? endif; ?>

        <? endif; ?>

    <?php $index++; ?>
    <?php endwhile; ?>

<?php endif; ?>

刚刚意识到我犯了一个错误:elseif$index=$totalNum应该是elseif$index=$totalNum。将更新答案。