3

我在 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 中的错误处理,但我觉得这是必须的。

任何帮助将不胜感激。

4

1 回答 1

5

我解决了。

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");
    }
}
于 2012-03-14T21:44:37.960 回答