wp role <command>

Manages user roles, including creating new roles and resetting to defaults.

$ wp role <command>

Click to view all subcommands

See references for Roles and Capabilities and WP User class.


# List roles.
$ wp role list --fields=role --format=csv

# Check to see if a role exists.
$ wp role exists editor
Success: Role with ID 'editor' exists.

# Create a new role.
$ wp role create approver Approver
Success: Role with key 'approver' created.

# Delete an existing role.
$ wp role delete approver
Success: Role with key 'approver' deleted.

# Reset existing roles to their default capabilities.
$ wp role reset administrator author contributor
Success: Reset 3/3 roles.


--path=<path> Path to the WordPress files.

--url=<url> Pretend request came from given URL. In multisite, this argument is how the target site is specified.

--ssh=[<scheme>:][<user>@]<host|container>[:<port>][<path>] Perform operation against a remote server over SSH (or a container using scheme of "docker", "docker-compose", "vagrant").

--http=<http> Perform operation against a remote WordPress installation over HTTP.

--user=<id|login|email> Set the WordPress user.

--skip-plugins[=<plugins>] Skip loading all plugins, or a comma-separated list of plugins. Note: mu-plugins are still loaded.

--skip-themes[=<themes>] Skip loading all themes, or a comma-separated list of themes.

--skip-packages Skip loading all installed packages.

--require=<path> Load PHP file before running the command (may be used more than once).

--[no-]color Whether to colorize the output.

--debug[=<group>] Show all PHP errors and add verbosity to WP-CLI output. Built-in groups include: bootstrap, commandfactory, and help.

--prompt[=<assoc>] Prompt the user to enter values for all command arguments, or a subset specified as comma-separated values.

--quiet Suppress informational messages.