I got on the list to test a private beta of a plugin I'm using on a multisite network.

The plugin authors have code in there to add a custom role. They have a bug that removes the ability to give a user any role except their one custom role.

When I visit ../wp-admin/network/site-users.php, the "Add User" role pulldowns only show the one role this plugin added. The change role pulldown menu shows all the WP default roles, plus a few extra roles this and other plugins have added. If I attempt to change a user to one of these roles, I get a "You can't give users that role" error page.

I've been discussing this with the developer, and they seem baffled.

I've been looking through my database and the codex, and I can't find where the valid roles are defined.


User roles are stored in wp_options table.

search for option name wp_user_roles in the wp_options table.

| improve this answer | |

User Roles are stored in table wp_user_meta

To check user roles, first, check out the user id in the table wp_users (Column name ID)

Now Go to table wp_usermeta and search where column user_id is equal to the ID that matches ID from wp_users table.

You will get a list of rows with metadata of the chosen user, the row with meta_key as wp_capabilities defines the user role.

The Value of wp_capabilities for

  • Admin : a:1:{s:13:"administrator";b:1;}
  • Woo Commerce Customer : a:1:{s:8:"customer";b:1;}
| improve this answer | |
  • 1
    Your answer relates to the assignment of a role to a user. The OP was asking about the role definitions themselves, which are stored in wp_options. – Brett Donald Oct 1 '19 at 3:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.