要输出特定重复行的内容,可以使用acf_form函数的pre_submission钩子来检查表单中的特定字段值,并在提交之前执行相应的操作。
以下是一个示例代码,演示了如何使用acf_form和pre_submission钩子来输出特定重复行的内容:
// 在主题的functions.php文件中添加以下代码
// 在表单提交之前执行的操作
function custom_pre_submission($form) {
// 获取表单中的特定字段值
$repeater_rows = $_POST['my_repeater_field'];
// 检查特定字段值,并输出相应的内容
foreach ($repeater_rows as $row) {
if ($row['my_field'] == '特定值') {
echo $row['other_field'];
}
}
}
// 添加pre_submission钩子
add_action('acf/pre_submission', 'custom_pre_submission');
// 在前端显示表单
acf_form(array(
'post_id' => 'new_post',
'field_groups' => array(123), // 替换为实际的字段组ID
'submit_value' => '提交',
));
在上面的代码中,我们首先定义了一个名为custom_pre_submission的函数,用于执行在提交之前的操作。在此函数中,我们首先获取了名为my_repeater_field的重复字段的值,然后使用foreach循环遍历每个重复行。
在循环中,我们检查了my_field字段的值是否等于特定值。如果是,我们输出了other_field字段的值。
然后,我们使用add_action函数将custom_pre_submission函数添加为acf/pre_submission钩子的回调函数。这样,当表单提交之前,custom_pre_submission函数将被调用。
最后,我们使用acf_form函数显示表单,其中包含了post_id和field_groups参数。你需要将field_groups参数替换为实际的字段组ID。
请注意,上述示例假设你已经在后台的ACF设置中创建了相关的字段组和字段,并将其与某个自定义帖子类型关联起来。
上一篇:ACF组子字段未显示