ACF中继器-应用不同行的最后一个中继器



我在wordpress网站上使用ACF中继器。

每个中继器显示在CCD_ 1中。我想在col-md-12中显示最后一个。

<div class="container">
<?php if ( have_rows( 'salon' ) ) : ?>
<div class="row">
<?php while ( have_rows( 'salon' ) ) : the_row(); ?>
<div class="col-md-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">Card title</h2>
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
</div>
</div>
</div>
<?php endwhile; ?>
</div>
<?php endif; ?>
</div>

用你的代码试试这个例子,它对我有效

<?php if( have_rows('services_repeater', $services) ): ?>
<?php $rowCount = count( get_field('services_repeater', $services) ); //GET THE COUNT ?>
<?php $i = 1; ?>
<?php while( have_rows('services_repeater', $services) ): the_row(); ?>
<?php // vars
$service = get_sub_field('service');
$description = get_sub_field('description');
?>
<span class="hint--bottom" data-hint="<?php echo $description; ?>"><?php echo $service; ?></span>
<?php if($i < $rowCount): ?>
<div id="separator"> / </div>
<?php endif; ?>
<?php $i++; ?>
<?php endwhile; ?>
<?php endif; ?>

另一种方法是通过count()获取salon字段的数量,然后检查该数量是否等于行索引。如果确实将col-md-12文本设置为变量,则回退到col-md-6文本。使用该变量作为类。

<div class="container">
<?php if ( have_rows( 'salon' ) ) :
$salon_count = count(get_field( 'salon' ));
?>
<div class="row">
<?php while ( have_rows( 'salon' ) ) : the_row();
$row_index = get_row_index();
$salon_col = ($row_index == $salon_count) ? 'col-md-12' : 'col-md-6';
?>
<div class="<?php echo $salon_col; ?>">
<div class="card">
<div class="card-body">
<h2 class="card-title">Card title</h2>
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
</div>
</div>
</div>
<?php endwhile; ?>
</div>
<?php endif; ?>
</div>

相关内容

  • 没有找到相关文章

最新更新