WP_Roles::add_role()
Adds a role name with capabilities to the list.
Updates the list of roles, if the role doesn't already exist.
The capabilities are defined in the following format: array('read'=> true ). To explicitly deny the role a capability, set the value for that capability to false.
Method of the class: WP_Roles{}
No Hooks.
Return
WP_Role|null
. WP_Role object, if the role is added.
Usage
global $wp_roles; $wp_roles->add_role( $role, $display_name, $capabilities );
- $role(string) (required)
- Role name.
- $display_name(string) (required)
- Role display name.
- $capabilities(bool[])
- List of capabilities keyed by the capability name, e.g. array('edit_posts'=> true,'delete_posts'=> false ).
Default: empty array
Changelog
Since 2.0.0 | Introduced. |
WP_Roles::add_role() WP Roles::add role code WP 6.6.2
public function add_role( $role, $display_name, $capabilities = array() ) { if ( empty( $role ) || isset( $this->roles[ $role ] ) ) { return; } $this->roles[ $role ] = array( 'name' => $display_name, 'capabilities' => $capabilities, ); if ( $this->use_db ) { update_option( $this->role_key, $this->roles ); } $this->role_objects[ $role ] = new WP_Role( $role, $capabilities ); $this->role_names[ $role ] = $display_name; return $this->role_objects[ $role ]; }