Функция add_cap в WordPress: назначение прав пользователям (WP 2.0.0)

WP_USER::ADD_CAP() │ ПУБЛИЧНЫЙ │ WP 2.0.0

Функция add_cap (добавить возможность) позволяет назначать пользователю права или отказывать в них.

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

Нет хуков (обработчиков событий).

Возвращаемое значение

Эта функция ничего не возвращает (null).

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

Чтобы использовать add_cap, необходимо создать объект класса WP_User. Пример:

$WP_User = new WP_User();
$WP_User->add_cap($cap, $grant);
  • $cap (строка, обязательный параметр) — название возможности (права), которое вы хотите назначить пользователю.
  • $grant (логическое, необязательный параметр) — необходимо ли предоставить это право пользователю. По умолчанию значение true, то есть право будет предоставлено.

Примеры

Пример 1: Добавление новой возможности отдельному пользователю

Допустим, мы хотим разрешить пользователю с ID 20 редактировать сообщения:

$user = new WP_User(20);
$user->add_cap('can_edit_posts');

Изменения

  • С версии 2.0.0: функция была введена.

Код функции add_cap

Посмотрите реализацию функции add_cap в файле class-wp-user.php:

public function add_cap($cap, $grant = true) {
    $this->caps[$cap] = $grant;
    update_user_meta($this->ID, $this->cap_key, $this->caps);
    $this->get_role_caps();
    $this->update_user_level_from_caps();
}

Связанные функции

Вот некоторые функции, которые связаны с ролями и возможностями в WordPress:

  • add_role() — позволяет добавлять новые роли.
  • author_can() — проверяет, может ли автор выполнять определенные действия.
  • current_user_can() — проверяет, имеет ли текущий пользователь определенные права.
  • get_editable_roles() — получает роли, которые может редактировать текущий пользователь.
  • get_role() — возвращает информацию о роли.
  • grant_super_admin() — назначает пользователя суперадминистратором.
  • is_super_admin() — проверяет, является ли пользователь суперадминистратором.
  • map_meta_cap() — сопоставляет мета-возможности с базовыми возможностями.
  • remove_role() — удаляет роль.
  • user_can() — проверяет, имеет ли пользователь определенные права.
  • wp_roles() — возвращает все роли в системе.
  • WP_Roles::add_cap() — позволяет классам ролей добавлять возможности.

Теперь у вас есть полное представление о функции add_cap и ее использовании. Она поможет вам управлять правами пользователей на вашем сайте WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *