Условный тег: user_can
Тег проверяет права указанного пользователя. Этот условный тег является boolean-функцией, то есть он возвращает только true или false.
Тег практически полностью идентичен условному тегу current_user_can, но требует явного указания пользователя.
<?php if ( user_can($user, $capability) ) { ... } ?> |
<?php if ( user_can($user, $capability) ) { ... } ?>
$user
(число|объект) (обязательный) - ID пользователя или сам пользователь.
По умолчанию значения нет.
$capability
(строка) (обязательный) - возможность или роль.
По умолчанию значения нет.
boolean
Возвращает true если пользователь имеет необходимые права и false в противном случае.
1 Проверка роли указанного пользователя
<?php if( user_can(1,'administrator') ) { echo "Пользователь с ID '1' имеет права администратора блога"; } ?> |
<?php if( user_can(1,'administrator') ) { echo "Пользователь с ID '1' имеет права администратора блога"; } ?>
2 Проверка роли текущего пользователя
<?php global $current_user; if( user_can($current_user->ID, 'administrator') ) echo "Пользователь имеет права администратора блога"; else echo "Пользователь не имеет прав администратора блога"; ?> |
<?php global $current_user; if( user_can($current_user->ID, 'administrator') ) echo "Пользователь имеет права администратора блога"; else echo "Пользователь не имеет прав администратора блога"; ?>
Данный код объявляет глобально текущего пользователя и указывает его в параметре $user. То есть он фактически дублирует собой использование условного тега current_user_can, который при некоторых обстоятельствах может работать некорректно (если текущий пользователь еще не определен).
Функция добавлена в версии 3.1.0
Функция user_can() находится в wp-includes/capabilities.php
Условные теги: comments_open, current_user_can, is_404, is_admin, is_archive, is_attachment, is_author, is_category, is_comments_popup, is_date, is_day, is_feed, is_front_page, is_home, is_local_attachment, is_multi_author, is_month, is_new_day, is_page, is_page_template, is_paged, is_plugin_active, is_plugin_active_for_network, is_plugin_inactive, is_plugin_page, is_post_type_archive, is_preview, is_search, is_single, is_singular, is_ssl, is_sticky, is_tag, is_tax, is_year, in_category, in_the_loop, is_active_sidebar, is_blog_installed, is_rtl, is_dynamic_sidebar, is_user_logged_in, has_excerpt, has_post_thumbnail, has_tag, pings_open, email_exists, post_password_required, post_type_exists, taxonomy_exists, user_can, username_exists, wp_attachment_is_image
Понравился пост? Подпишись на обновления по RSS или Twitter !
Комментариев пока еще нет.