user_can() – проверка прав конкретного пользователя

Функция возвращает true, если у заданного пользователя имеется проверяемое право, иначе – false.

Рекомендую вам свой подробный урок про роли и права пользователей WordPress!

user_can( $user, $capability, ...$args )

Параметры функции user_can()

$user
(целое число|объект WP_User) ID или объект пользователя, которого проверяем. Если передаём ID, то функция сама будет получать из него объект функцией get_userdata(). Для того, чтобы сделать проверку для текущего пользователя, можете передать параметр другой функцией – get_current_user_id(), а ещё лучше – использользуйте current_user_can().
$capability
(строка) Право, которое нужно проверить.
…$args
Любое количество дополнительных аргументов, поддерживаемых для определённого мета-права.

Примеры

Ниже на первой строчке проверяется примитивное право edit_posts, а также мета-права edit_post и edit_post_meta. Как можете догадаться, мета-права (такие, как например edit_post и edit_user) должны получить какие-то дополнительные аргументы.

user_can( $user->ID, 'edit_posts' );
user_can( $user->ID, 'edit_post', $post->ID );
user_can( $user->ID, 'edit_post_meta', $post->ID, $meta_key );

Источник: Блог Миши Рудрастых

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: