WP_REST_Users_Controller::check_username()publicWP 4.7.0

Check a username for the REST API.

Performs a couple of checks like edit_user() in wp-admin/includes/user.php.

Method of the class: WP_REST_Users_Controller{}

Hooks from the method

Return

String|WP_Error. The sanitized username, if valid, otherwise an error.

Usage

$WP_REST_Users_Controller = new WP_REST_Users_Controller();
$WP_REST_Users_Controller->check_username( $value, $request, $param );
$value(string) (required)
The username submitted in the request.
$request(WP_REST_Request) (required)
Full details about the request.
$param(string) (required)
The parameter name.

Changelog

Since 4.7.0 Introduced.

WP_REST_Users_Controller::check_username() code WP 6.6.2

public function check_username( $value, $request, $param ) {
	$username = (string) $value;

	if ( ! validate_username( $username ) ) {
		return new WP_Error(
			'rest_user_invalid_username',
			__( 'This username is invalid because it uses illegal characters. Please enter a valid username.' ),
			array( 'status' => 400 )
		);
	}

	/** This filter is documented in wp-includes/user.php */
	$illegal_logins = (array) apply_filters( 'illegal_user_logins', array() );

	if ( in_array( strtolower( $username ), array_map( 'strtolower', $illegal_logins ), true ) ) {
		return new WP_Error(
			'rest_user_invalid_username',
			__( 'Sorry, that username is not allowed.' ),
			array( 'status' => 400 )
		);
	}

	return $username;
}