我已经在bbPress中的用户配置文件中添加了一个自定义字段,但我不确定如何进行javascript之外的表单验证。我想做一些PHP验证,但我尝试过的几件事都不起作用。
如果你没有输入电子邮件,在你提交表格后,它会说"错误:请输入电子邮件地址。"我想要这样的东西。
我试过:
$myErrors = new WP_Error();
$myErrors->add('id_error', __('Test error.',""));
bbp_add_error( 'bbp_steamid_invalid', __( '<strong>ERROR</strong>: The ID you entered is invalid.', 'bbpress' ) );
我一点也不熟悉WordPress和bbPress中的错误处理,但我觉得这是必须的。
任何帮助都将不胜感激。
我解决了。
add_action( 'user_profile_update_errors', 'validate_steamid_field' );
function validate_steamid_field(&$errors, $update = null, &$user = null)
{
if (!preg_match("/^STEAM_[0-5]:[01]:'d+$/", $_POST['_bbp_steamid']))
{
$errors->add('empty_steamid', "<strong>ERROR</strong>: Please Enter a valid SteamID");
}
}