diff --git a/src/wp-includes/ms-functions.php b/src/wp-includes/ms-functions.php index 8493b40b36..487d8401e5 100644 --- a/src/wp-includes/ms-functions.php +++ b/src/wp-includes/ms-functions.php @@ -494,6 +494,10 @@ function wpmu_validate_user_signup($user_name, $user_email) { if ( strlen( $user_name ) < 4 ) $errors->add('user_name', __( 'Username must be at least 4 characters.' ) ); + if ( strlen( $user_name ) > 60 ) { + $errors->add( 'user_name', __( 'Username may not be longer than 60 characters.' ) ); + } + if ( strpos( $user_name, '_' ) !== false ) $errors->add( 'user_name', __( 'Sorry, usernames may not contain the character “_”!' ) ); diff --git a/tests/phpunit/tests/multisite/wpmuValidateUserSignup.php b/tests/phpunit/tests/multisite/wpmuValidateUserSignup.php index 914d938691..a368288d8c 100644 --- a/tests/phpunit/tests/multisite/wpmuValidateUserSignup.php +++ b/tests/phpunit/tests/multisite/wpmuValidateUserSignup.php @@ -26,6 +26,7 @@ class Tests_Multisite_WpmuValidateUserSignup extends WP_UnitTestCase { array( 'f', 'User names of 1 characters are not allowed.' ), array( 'f', 'User names of 1 characters are not allowed.' ), array( '12345', 'User names consisting only of numbers are not allowed.' ), + array( 'thisusernamecontainsenoughcharacterstobelongerthan60characters', 'User names longer than 60 characters are not allowed.' ), ); }