diff --git a/wp-admin/includes/upgrade.php b/wp-admin/includes/upgrade.php
index 9bdc2e77ed..df3b8edcc3 100644
--- a/wp-admin/includes/upgrade.php
+++ b/wp-admin/includes/upgrade.php
@@ -82,16 +82,20 @@ if ( ! function_exists( 'wp_install' ) ) :
$user_id = username_exists( $user_name );
$user_password = trim( $user_password );
$email_password = false;
+ $user_created = false;
+
if ( ! $user_id && empty( $user_password ) ) {
$user_password = wp_generate_password( 12, false );
$message = __( 'Note that password carefully! It is a random password that was generated just for you.' );
$user_id = wp_create_user( $user_name, $user_password, $user_email );
update_user_option( $user_id, 'default_password_nag', true, true );
$email_password = true;
+ $user_created = true;
} elseif ( ! $user_id ) {
- // Password has been provided
- $message = '' . __( 'Your chosen password.' ) . '';
- $user_id = wp_create_user( $user_name, $user_password, $user_email );
+ // Password has been provided.
+ $message = '' . __( 'Your chosen password.' ) . '';
+ $user_id = wp_create_user( $user_name, $user_password, $user_email );
+ $user_created = true;
} else {
$message = __( 'User already exists. Password inherited.' );
}
@@ -99,6 +103,11 @@ if ( ! function_exists( 'wp_install' ) ) :
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
+ if ( $user_created ) {
+ $user->user_url = $guessurl;
+ wp_update_user( $user );
+ }
+
wp_install_defaults( $user_id );
wp_install_maybe_enable_pretty_permalinks();
diff --git a/wp-includes/version.php b/wp-includes/version.php
index 03325df1bc..924f83cd4b 100644
--- a/wp-includes/version.php
+++ b/wp-includes/version.php
@@ -13,7 +13,7 @@
*
* @global string $wp_version
*/
-$wp_version = '5.4-alpha-46988';
+$wp_version = '5.4-alpha-46989';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.