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 в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Если вам нужна помощь с сайтом или разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда будем рады вам помочь!

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, если же код – меньше одной строчки, то можно и в <code></code>.