我正在使用http://www.advancedcustomfields.com插件在 Wordpress 中创建自定义字段。我专门使用中继器字段功能。
在一个页面上,我有一个具有无限行数的转发器。回显所有数据的常用方法如下:
<?php $counter = 1; if(get_field('step_by_step_training')): ?>
<?php while(the_repeater_field('step_by_step_training')): ?>
<p class="training-<?php echo $counter; ?>"><?php the_sub_field('introduction'); ?></p>
<?php $counter++; endwhile; ?>
<?php endif; ?>
是否可以使用下一个按钮一次显示一行数据,按下该按钮将显示下一行数据?我只希望一次显示一行数据,因此如果最初显示第 1 行,则单击下一个时,它会隐藏第 1 行并显示第 2 行。基本上创建了一个逐步过程。
最终我想包含一个表单,以便用户可以提交数据。
更新:
<form class="form" method="POST" action="<?php the_permalink(); ?>">
<?php $counter = 1; if(get_field('step_by_step_training')): ?>
<?php while(the_repeater_field('step_by_step_training')): ?>
<div class="form-row">
<p class="training"><?php echo the_sub_field('introduction'); ?></p>
<button class="next">Next Form Element</button>
</div>
<?php $counter++; endwhile; ?>
<?php endif; ?>
</form>
<script type="text/javascript">
jQuery(function($) {
$(document).ready(function() {
// hide all form-rows, but not the first one
$('.form-row').not(':first').hide();
$('button.next').click(function(e) {
// prevent the next buttons from submitting the form
e.preventDefault();
// hide this form-row, and show the next one
$(this).parent('div.form-row').hide().next('div.form-row').show();
});
});
});
</script>