How to create Custom WordPress User Roles

Do you want to create custom WordPress user roles on your website to assign users to specific tasks? You can easily add a new user role on your WordPress site and customize it based on your preferences. In this guide, we’ll show you the exact process you need to follow for it.

But before we move on to the steps, let’s understand custom user roles in brief.

What is a Custom User Role?

One of the major reasons for WordPress to be a very popular and usable CMS is its ability to manage user roles easily. This is because it already provides you with a set of useful user roles and assigned each of them with specific capabilities. By default, WordPress offers you 6 user roles:

  • Super Admin
  • Administrator
  • Editor
  • Author
  • Contributor
  • Subscriber

Each of these roles is assigned with its distinctive capabilities which allow the users to perform a very unique set of tasks. For example, the editor user role can manage and publish all the posts on your website. Whereas, the author user role can publish and manage only its own posts.

Apart from these 6 predefined user roles, if any other user role is added to a website with its own custom capabilities, it is a custom user role. Some of the common examples of custom user roles are comment moderator, inventory manager, and guest author.

Now that you know what a custom user role is, let’s have a look at why and when might you need to create it.

Why create Custom User Roles in WordPress?

You may need to create custom user roles in WordPress due for several reasons depending on the situation. As mentioned already, WordPress has 6 different default user roles when you install it.

But even though they have adequate capabilities for an average website, you may need some more user roles. This is where you’ll need to create custom user roles for the additional needs of your website. The custom user roles are useful even more if you have a lot of registered users on your website and have to assign them multiple tasks.

For example, user roles such as an inventory manager, and customers are very essential for an online store. Similarly, the user roles of the guest author and comment moderator are also quite important for a blog. So if you run any similar website and don’t have the correct user role for the task, it may be very difficult for you to manage your website properly.

How to create Custom WordPress User Roles

The easiest way to create and add custom user roles to your WordPress website is by using a plugin. Plugins help you increase the functionality of your website. This allows you to add features on your website that weren’t present in the default theme or not provided by WordPress.

Similarly, WordPress has several plugins that will let you create custom user roles and add them to your website. So let’s have a look at some of the most popular plugins first.

User Role Editor

user role editor create custom wordpress user roles

As suggested in the name itself, User Role Editor is a plugin designed to let you edit user roles on your WordPress website. It is a very easy-to-use plugin through which you can edit the capabilities for a new custom user role. Other than that, you can even copy an existing role and further modify it to make a completely new user role.

Since managing user roles may be a complicated task, the plugin also provides you with multi-site support. Therefore, you can manage multiple new custom user roles for multiple websites if required.

Key Features

  • Copy existing user role and further customize it
  • Block selected admin menu items for role
  • Export/import user role options
  • Frontend widgets for assigned roles
  • Multi-site support

Pricing

User Role Editor is a freemium plugin. You can get the free version from the official WordPress plugin repository. The premium version starts from 29 USD per year and includes 1 year of updates and premium support.

Members

Members is one of the best membership plugins for WordPress but it can be used to create custom user roles. It enables you to add capabilities to specific user roles and even lets you delete them if it’s not needed for specific roles. Similarly, the plugin also allows you to add multiple user roles to a single user as per the requirement of your website.

Moreover, you can also protect your content by providing access to them only for specific users using this plugin. But more importantly, it lets you add content permissions and restricted content to further secure the content of your website.

Key Features

  • Edit, create, and delete options for user roles and capabilities
  • Add multiple user roles to a single user
  • Content permissions and restricted content options
  • Private site and feed switchable
  • Block permissions based on user logged-in status

Pricing

Members is a free plugin. You can get the free version from the official WordPress plugin repository.

These are some of the plugins you can use to create and add custom user roles to your WordPress website. Now, let’s see how you can use them.

Create Custom User Roles in WordPress using a Plugin

For this demonstration, we will be using the User Role Editor plugin as it is very easy to use and its free version includes all the basic features that we need. In fact, most of the custom user roles plugins have very similar procedures to add a custom user role. So no matter which plugin you want to use, you can take reference from the following guide if you need further assistance.

But to start using the plugin, we’ll have to install and activate it.

1. Install and Activate the plugin

First, open your WordPress dashboard and go to Plugins > Add New. Here, search for the keywords of the plugin on the search bar of the plugin repository.

After you’ve found the plugin, click on Install Now to install the plugin. The installation will be completed shortly. After that, Activate the plugin.

install plugin create custom wordpress user roles

If you wish to use the premium version or any other premium plugin, you’ll need to upload and activate them manually. Please have a look at our detailed guide on how to install a WordPress plugin manually if you need any help with it.

2. Add and Configure New User Role

After you activate the plugin, go to Users > User Roles from your WordPress dashboard. Here, you will be able to add, edit, or remove any of the user roles on your website. Since we’re gonna create a new custom user role, click on Add Role on the right side of your screen first.

As an example, we’ll create a user role for the inventory(product) manager here. But you can create any custom user role for your website according to its needs. So just enter the role name(ID), display name, and select whether you want to make a copy of it from any other user role.

Once you add all these details, click on Add Role.

inventory manager create custom wordpress user roles

Note: We’ve added the inventory manager as we run an online store on our demo. So if you want to create custom user roles for your eCommerce store too, we would like to recommend you set up WooCommerce without missing any major steps. Then, the custom post types and the capabilities required for WooCommerce will also be shown here.

Then, all you have to do is select the capabilities that you want to allow for your new custom user role using the checkboxes. Here, we have checked all the capabilities under the Product post types along with some other necessary capabilities.

After you have made all the required changes to your new custom user role, just click on Update.

If you want to edit any other existing user role, the plugin does let you to further customize them. Just select the user role on the drop-down menu from Select Role and change its capabilities.

3. Assign the New Custom User Role

Now, the only thing left to do is assign the new custom user role to your designated user.

If you want to add a new user for it, go to Users > Add User. Then, add the necessary details for the user and select the custom user role that you just created for your new user. After that, click on Add New User.

add new user create custom wordpress user roles

You can also add the custom user role to your existing WordPress user. For that, go to Users > All Users from your WordPress dashboard. Here, click on Edit for the user for which you want to change the current user role to the custom new one.

Now, navigate to the Role option and select the newly created custom user name from the dropdown option.

Finally, click on Update Profile to save your changes.

That’s it! This is how you create and add new custom user roles on your WordPress website. The assigned user will be able to use only those capabilities that you have selected for the particular custom user role.

Bonus: Edit WordPress Dashboard Menu for Specific User Roles

After you create custom user roles in WordPress, you may also need to edit your WordPress dashboard menu to show specific menu items on them. Even though most of the items will be hidden for the custom user roles, you can further hide them if you need to as well. So we will show you how to edit them for individual user roles too.

Similar to creating the custom user roles, one of the easiest ways to edit the WordPress dashboard menu is also by using a plugin. For this section, we will use the Admin Menu Editor plugin. It is a free plugin that has a very simple interface to allow you to edit the dashboard menu.

install plugin edit menu create custom wordpress user roles

Furthermore, the plugin also comes with a wide range of customization options to show specific menu items for specific user roles. But just like all the plugins, you’ll have to install and activate it first.

1. Install and Activate the Plugin

As mentioned in one of the previous steps, go to Plugins > Add New from your WordPress dashboard once again and search for the plugin. Then, click on Install Now after you find the plugin on the search results.

install plugin edit menu create custom wordpress user roles

Finally, Activate the plugin after the installation is complete. Now, you can configure the plugin settings to edit the dashboard for your user roles.

2. Configure the Menu Items for Specific User Roles

To select which menu items you want to show to particular user roles, go to Settings > Menu Editor from your WordPress dashboard. You will be redirected to the Admin Menu tab where you can see all the menu items that are present on your website admin.

Just click on the admin menu that you want to hide or show for just a specific user. Here, you will have to add a user role or a capability under the extra capability option. Only the selected user role in the extra capability option can access the particular menu item.

But do make sure that the extra capability option of its submenu is also set to the same. You can also edit the menu title and target page for the menu and submenu items. Just don’t forget to save the changes.

For our demonstration, we have added the editor user role to the extra capability option for the Posts menu. But you can add your new custom user role to your website on the desired menu item.

Furthermore, you can also edit the access for redirects and plugins for specific user roles. Similarly, there are some more plugin options provided for you if you just switch the tabs. If you want to know more about it, please have a look at our guide on how to edit the WordPress dashboard menu.

After you preview your dashboard, you’ll see that the menu items are hidden based on the user roles. For example, if we switch to the administrator dashboard, the Posts menu isn’t shown.

However, if we open the dashboard with an Editor account, the Posts menu is displayed.

Conclusion

This is how you can create and add custom user roles to your WordPress website. Custom user roles are very essential if you want to assign specific users with specific additional tasks.

And as discussed in this article, the easiest way to create them is by using a plugin. Then, all you have to do is install and activate the plugin and create a new user role using it. You also have to assign the desired capabilities to them and finally assign the custom user roles to your users.

Besides, we’ve also shown you a bonus step of editing the WordPress dashboard menu for specific user roles. You can do the same with your newly created custom user role for more flexibility on your website.

So can you add a custom user role to your website now? Do let us know in the comments. Meanwhile, here are some more of our posts that you might find helpful: