Отображение роли текущего пользователя в WordPress
Есть ли в админ-панели WordPress раздел, который просто показывает, какая роль назначена текущему авторизованному пользователю?
Например, я знаю, что у меня права администратора, потому что я это знаю, но нигде не вижу этому подтверждения.
Также, если я установлю себе роль Редактора, как быстро проверить, что я действительно авторизован как Редактор? (кроме того, чтобы просто "знать").
Было бы очень удобно это знать, особенно когда делаешь 10 вещей одновременно и теряешь счет.
Возможно, было бы неплохо отображать это после "Как дела..." в правом верхнем углу.
РЕДАКТИРОВАНО
Прежде чем кто-то упомянет панель Пользователей. Да, я вижу там столбец Роль (так как я администратор), но тот, кто является просто Автором, не сможет это увидеть, верно?

Как вы предложили, вот как можно отобразить роли рядом с именем пользователя в административной панели:
function wpse_203917_admin_bar_menu( $wp_admin_bar ) {
if ( ! $node = $wp_admin_bar->get_node( 'my-account' ) )
return;
$roles = wp_get_current_user()->roles;
$node->title .= sprintf( ' (%s)', implode( ', ', $roles ) );
$wp_admin_bar->add_node( $node );
}
add_action( 'admin_bar_menu', 'wpse_203917_admin_bar_menu' );

Вы проверяете роль текущего пользователя и добавляете значение в админ-бар, как элемент профиля.
Чтобы получить роль текущего пользователя, используйте небольшую функцию ниже:
/**
* Возвращает переведённую роль текущего пользователя.
* Если роли нет, возвращает FALSE.
*
* @return string Переведённое название текущей роли.
**/
function fb_get_current_user_role_fixed() {
global $wp_roles;
$current_user = wp_get_current_user();
$roles = $current_user->roles;
$role = array_shift( $roles );
return isset( $wp_roles->role_names[ $role ] ) ? translate_user_role( $wp_roles->role_names[ $role ] ) : FALSE;
}
Также пример добавления значения из функции в админ-бар, в моём примере новый элемент к пункту аккаунта в Админ-баре.
add_action( 'admin_bar_menu', 'fb_change_admin_bar_item' );
/**
* Добавляет элемент в админ-бар, к пункту my-account.
*
* @param Array $wp_admin_bar
*/
function fb_change_admin_bar_item( $wp_admin_bar ) {
$args = array(
'id' => 'user_role',
'title' => __( 'Роль:' ) . ' ' . fb_get_current_user_role_fixed(),
'parent' => 'my-account'
);
$wp_admin_bar->add_node( $args );
}
Смотрите результат на скриншоте, так гораздо проще понять цель примера.
В качестве альтернативы — второй пример, который добавляет название роли к имени пользователя, в стандартный заголовок админ-бара.
add_action( 'admin_bar_menu', 'fb_change_admin_bar_item' );
function fb_change_admin_bar_item( $wp_admin_bar ) {
$node = $wp_admin_bar->get_node( 'my-account' );
if ( ! $node ) {
return $wp_admin_bar;
}
$node->title .= ' ' . fb_get_current_user_role_fixed();
$wp_admin_bar->add_node( $node );
}
Также прилагается скриншот результата.

Хорошо. Значит, встроенного решения, о котором ты знаешь, нет?
