Wordpress 带有错误句柄的自定义验证忍者表单
我正在WordPress安装中使用忍者表单插件 我的表单有3个输入文本字段 在按下submit按钮后,我需要通过检查数据库中的自定义表中是否存在输入的值来验证其中一个输入 如果该值不存在,则不会发生任何事情(忍者表单保存表单),如果存在,我需要添加忍者表单错误,并让用户更改输入,以便使用新值保存表单Wordpress 带有错误句柄的自定义验证忍者表单,wordpress,ninja-forms,Wordpress,Ninja Forms,我正在WordPress安装中使用忍者表单插件 我的表单有3个输入文本字段 在按下submit按钮后,我需要通过检查数据库中的自定义表中是否存在输入的值来验证其中一个输入 如果该值不存在,则不会发生任何事情(忍者表单保存表单),如果存在,我需要添加忍者表单错误,并让用户更改输入,以便使用新值保存表单 如何连接提交操作?我怎样才能在这个钩子里得到我需要的输入值?如果存在值,如何添加忍者表单错误以防止表单保存?您可以使用忍者表单提交数据钩子来执行此操作。在这里,您可以通过变量$form\u data
如何连接提交操作?我怎样才能在这个钩子里得到我需要的输入值?如果存在值,如何添加忍者表单错误以防止表单保存?您可以使用
忍者表单提交数据钩子来执行此操作。在这里,您可以通过变量$form\u data
使用字段id访问字段的值。将字段的错误消息添加到$form\u data['errors']
时,将不会保存表单
像这样(在functions.php
中):
谢谢你!错误直接返回到字段,这是最好的方法!如何返回通用表单错误?我想返回一个与任何特定字段无关的错误。我只想在表单底部显示一个错误。
add_filter('ninja_forms_submit_data', 'custom_ninja_forms_submit_data');
function custom_ninja_forms_submit_data($form_data)
{
$field_id = 2;
$field_value = $form_data['fields'][$field_id]['value'];
$exists = true; // Check your database if $field_value exists
if($exists)
{
$form_data['errors']['fields'][$field_id] = 'Value already exists';
}
return $form_data;
}