ACF中继器场行和列

时间:2015-10-26 14:24:27

标签: php html zurb-foundation advanced-custom-fields

所以我需要在ACF中使用repeater字段来输出我网站的一部分。我设置它的方式每次调用时都会创建一个新的<div class="row landing-item">。我需要它每2次创建一次,所以html对于布局是正确的。

<section class="row landing">
<h2>Featured Sections</h2>
<?php if( have_rows('landing_page_landing_items') ): ?>
    <?php while ( have_rows('landing_page_landing_items') ) : the_row(); ?>
        <div class="row landing-item">
            <div class="small-12 medium-6 columns">
                <img src="<?php the_sub_field('landing_image'); ?>">
                <h3><?php the_sub_field('landing_title'); ?></h3>
                <p><?php the_sub_field('landing_text'); ?></p>
                <a class="button" href="<?php the_sub_field('landing_link'); ?>">Learn More</a>
            </div>
        </div><!-- end landing-item -->
    <?php endwhile; ?>
<?php endif; ?>

如果你看一下上面我需要的最终结果是一行有2列,然后行有2列,依此类推。现在,它每次给我一行1列。我尝试在行和列的外部和内部移动脚本启动,但无法获得正确的序列。

1 个答案:

答案 0 :(得分:0)

看起来您可以通过使用Foundation Block Grid功能而不是标准网格来实现最终目标。如果您使用块网格,您将继续仅基于列表中的项目数重复行。见下文:

<section class="row landing">
    <h2>Featured Sections</h2>
    <div class="row landing-item">
        <ul class="small-block-grid-1 medium-block-grid-2">
            <?php if( have_rows('landing_page_landing_items') ): ?>
                <?php while ( have_rows('landing_page_landing_items') ) : the_row(); ?>
                        <li>
                            <img src="<?php the_sub_field('landing_image'); ?>">
                            <h3><?php the_sub_field('landing_title'); ?></h3>
                            <p><?php the_sub_field('landing_text'); ?></p>
                            <a class="button" href="<?php the_sub_field('landing_link'); ?>">Learn More</a>
                        </li>
                <?php endwhile; ?>
            <?php endif; ?>
        </ul>
    </div><!-- end all landing items -->
</section>

如果您需要对每行编辑进行任何特殊操作,则可能需要执行一些CSS。我认为这可能是解决你的困境的一种方法。