Как получить текущую роль пользователя в Wordpress?
Как получить текущую роль пользователя в Wordpress?
Ответ 1
Предполагая, что у вас есть идентификатор пользователя ($ user_id), что-то вроде этого должно работать:
$user = new WP_User( $user_id );
if ( !empty( $user->roles ) && is_array( $user->roles ) ) {
foreach ( $user->roles as $role )
echo $role;
}
Получить идентификатор пользователя из сеанса.
Ответ 2
Если вы не знаете идентификатор пользователя, эта функция поможет вам (поместите его в файл темы functions.php)
function get_user_role() {
global $current_user;
$user_roles = $current_user->roles;
$user_role = array_shift($user_roles);
return $user_role;
}
И затем в шаблоне вы можете получить роль пользователя, вызвав get_user_role().
Нашел здесь.
Ответ 3
function get_role_by_id( $id ) {
if ( !is_user_logged_in() ) { return false; }
$oUser = get_user_by( 'id', $id );
$aUser = get_object_vars( $oUser );
$sRole = $aUser['roles'][0];
return $sRole;
}