我正在使用ACF中继器字段作为用户配置文件,它在用户配置文件页面中显示如下:
那很酷。
但是在前端,我有一个表单,我想用它来删除一个特定的行。我的自定义表单只是列出了所有带有单选按钮的行,所以如果用户选择了数字3并提交了表单,那么我想删除第三行(在本例中,带有Catherine Davies的行将被删除)。
该表单工作正常,因为它按预期提交并返回用户选择的值,但是我的删除所选行的代码似乎不起作用。
主题上的ACF documentation seems a little vague。基于ACF doc和this StackOverflow post的组合,我希望以下代码可以工作,但它没有:
$user_ID = get_current_user_id();
$field = 'extra_user_info'; // Name of the repeater field
$row_to_delete = $_POST["row_to_delete"];
delete_sub_row($field, $row_to_delete, 'user_' . $user_id);
需要说明的是,即使我将$row_to_delete
变量硬编码为任意数字(从1到4),它仍然不会删除任何行。
澄清一下,我希望删除一整行。
**注:**我知道我可以只在前端嵌入ACF表单,但由于某些原因,我不会深入说明这不是一个选项,因此使用我自己的自定义表单。
1条答案
按热度按时间kcugc4gi1#
可能还有另外一个问题,但至少在您的示例中,您的
$user_ID
变量是大写字母,而传递给delete_sub_row()
的变量是小写字母。PHP变量区分大小写。