高级自定义字段:中继器
Advanced Custom Fields : Repeaters
我正在尝试使用 ACF 在下方显示
(有多个版块所以把这个版块做成复读版)
- 章节标题
(在部分标题下有多个包,因此也将此部分设为转发器)
-- 包标题
-- 价格
每次我添加一个部分时,它应该显示为上一个部分下方的新部分。而不是它显示在上一节的内部。
你能指出我这里做错了什么吗?
<div class="pricing">
<?php
if(have_rows('packages')):
while(have_rows('packages')) : the_row();?>
<div class="pricing-section">
<?php echo the_sub_field('section_title_and_details'); ?>
</div>
<div class="pricing-package-container">
<?php if(have_rows('package_details')):
while(have_rows('package_details')) : the_row(); ?>
<div class="pricing-packages">
<h3><?php echo the_sub_field('package_name'); ?></h3>
<h4><?php echo the_sub_field('price'); ?></h4>
</div>
<?php endwhile;
endif;
endwhile;
endif;
?>
</div>
</div>
正如@HowardE 上面指出的那样,pricing-package-container 在循环之外关闭。
修复如下。
<!-- Custom Feilds -->
<div class="pricing">
<?php
if(have_rows('packages')):
while(have_rows('packages')) : the_row();?>
<div class="pricing-section">
<?php the_sub_field('section_title_and_details'); ?>
</div>
<div class="pricing-package-container">
<?php if(have_rows('package_details')):
while(have_rows('package_details')) : the_row(); ?>
<div class="pricing-packages">
<h3><?php the_sub_field('package_name'); ?></h3>
<h4><?php the_sub_field('price'); ?></h4>
</div>
<?php endwhile;
endif; ?>
</div>
<?php endwhile;
endif;
?>
</div>
我正在尝试使用 ACF 在下方显示
(有多个版块所以把这个版块做成复读版) - 章节标题 (在部分标题下有多个包,因此也将此部分设为转发器) -- 包标题 -- 价格
每次我添加一个部分时,它应该显示为上一个部分下方的新部分。而不是它显示在上一节的内部。
你能指出我这里做错了什么吗?
<div class="pricing">
<?php
if(have_rows('packages')):
while(have_rows('packages')) : the_row();?>
<div class="pricing-section">
<?php echo the_sub_field('section_title_and_details'); ?>
</div>
<div class="pricing-package-container">
<?php if(have_rows('package_details')):
while(have_rows('package_details')) : the_row(); ?>
<div class="pricing-packages">
<h3><?php echo the_sub_field('package_name'); ?></h3>
<h4><?php echo the_sub_field('price'); ?></h4>
</div>
<?php endwhile;
endif;
endwhile;
endif;
?>
</div>
</div>
正如@HowardE 上面指出的那样,pricing-package-container 在循环之外关闭。 修复如下。
<!-- Custom Feilds -->
<div class="pricing">
<?php
if(have_rows('packages')):
while(have_rows('packages')) : the_row();?>
<div class="pricing-section">
<?php the_sub_field('section_title_and_details'); ?>
</div>
<div class="pricing-package-container">
<?php if(have_rows('package_details')):
while(have_rows('package_details')) : the_row(); ?>
<div class="pricing-packages">
<h3><?php the_sub_field('package_name'); ?></h3>
<h4><?php the_sub_field('price'); ?></h4>
</div>
<?php endwhile;
endif; ?>
</div>
<?php endwhile;
endif;
?>
</div>