WP_Roles::add_cap( string $role, string $cap, bool $grant = true )

Add capability to role.



(string) (Required) Role name.


(string) (Required) Capability name.


(bool) (Optional) Whether role is capable of performing capability.

Default value: true

Top ↑

More Information

Changing the capabilities of a role is persistent, meaning the added capability will stay in effect until explicitly revoked.

This setting is saved to the database (in table wp_options, field wp_user_roles), so it might be better to run this on theme/plugin activation.

Top ↑


File: wp-includes/class-wp-roles.php

	public function add_cap( $role, $cap, $grant = true ) {
		if ( ! isset( $this->roles[ $role ] ) ) {

		$this->roles[ $role ]['capabilities'][ $cap ] = $grant;
		if ( $this->use_db ) {
			update_option( $this->role_key, $this->roles );

Top ↑


Version Description
2.0.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.