WP_Roles::add_role()publicWP 2.0.0

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.

Метод класса: WP_Roles{}

Хуков нет.

Возвращает

WP_Role|null. WP_Role object, if the role is added.

Использование

global $wp_roles;
$wp_roles->add_role( $role, $display_name, $capabilities );
$role(строка) (обязательный)
Role name.
$display_name(строка) (обязательный)
Role display name.
$capabilities(bool[])
List of capabilities keyed by the capability name, e.g. array('edit_posts'=> true,'delete_posts'=> false ).
По умолчанию: empty array

Список изменений

С версии 2.0.0 Введена.

Код WP_Roles::add_role() WP 6.5.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 ];
}