WordPress will tell you that usernames cant be changed, but fortunately there is an easy way to do this. What we’re going to do is simply create a new account and swap it with the old one. It’s worth noting that there are a few plugins that will automate this process for you, but these steps are simple enough to follow without needing to automate them with a plugin. (I firmly believe that if you can do something natively in WordPress, it’s not worth using a plugin…that’s just more junk to maintain, more junk to break, and uninstalling rarely removes everything cleanly.)
The following steps have been confirmed on WordPress 3.8, but I know the process is exactly the same on previous versions. (How far back, I don’t know, but if you’re not running the latest and greatest, it’s time to upgrade just to get the security patches and make your site less vulnerable.)
For this, we’re going to refer to admin account that you want to delete as “OldAdmin” and the new administrator account that you’re going to create as “NewAdmin”. Of course, don’t actually use ‘NewAdmin’ as your new username! Also, this is most commonly used to change the default “admin” username to something else, but you can use it to change the login for any user with any role; just select the appropriate dropdown in Part 1, Step 5.
Part 1: Creating a new Admin Account
- Log in to your site and go to Users >> All Users and edit the profile of the OldAdmin account that you wish to delete.
- Jot down the email address for this account. You’ll need it later.
- Edit the user by changing the email address to something else. The replacement email address needs to be in a valid format, but doesn’t need to actually exist. You can change it to firstname.lastname@example.org if you want because we wont be sending any alerts there, BUT if you run a high-volume site and are likely to get notifications in the next 5 minutes or so, you may want to temporarily use a valid email address. Click on the “Update Profile Button” when you’re done.
- Go to Users >> All New
- Enter the details for your new administrator (NewAdmin) that will ultimately replace the OldAdmin account. Be sure to select a username that is not on the list of usernames to avoid when configuring WordPress. You will probably want to want to enter the same email address as the OldAdmin (that you noted in Step 2) if you want use the same gravitar. Enter a password and make it a good one. (If you need help generating a strong password, Norton has an easy-to-use generator at https://identitysafe.norton.com/password-generator). Set the role dropdown to “Administrator”. Click on “Add New User”.
Now that you’ve created a new user, it’s time to remove reassign all of “admin” posts to your new user.
Part 2: Creating a new administrator and deleting the old one
Note: If you’re changing the username for a non-administrator account, skip steps 1 & 2.
- Log in as NewAdmin
- Go to Users >> All Users
- Hover over the OldAdmin account. Click “Delete”. This wont actually delete the account, yet.
- Click the radio button next to “Attribute all posts to” and select the NewAdmin account from the list.
- Click “Confirm Deletion”
That’s it! You’ve swapped the old user for the new user account and effectively changed the username from OldAdmin to NewAdmin!