简体   繁体   中英

Wordpress - Form validation on user profile edit

I have added a custom field to user profiles in bbPress however I am unsure how to do form validation other than javascript. I would like to do some PHP validation however the few things I have tried didn't work.

If you fail to enter an email it will say "ERROR: Please enter an e-mail address." after you have submitted the form. I want something like that.

I have tried:

$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' ) );

I am not at all familiar with error handling in both WordPress and bbPress however I feel it is a must.

Any help would be must appreciated.

I worked it out.

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");
    }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM