Разрешить пользователю доступ только к панели управления!
Обновление: Этот сниппет ниже удаляет меню также для моего админ-аккаунта:
function remove_menu_items() {
global $menu;
global $user_ID;
if( $user_ID ) :
/* Доступ только к панели управления */
if( current_user_can( 'Dashboardvisitors' ) ) :
$restricted = array(
__('Записи'),
__('Медиафайлы'),
__('Страницы'),
__('Ссылки'),
__('Внешний вид'),
__('Инструменты'),
__('Пользователи'),
__('Настройки'),
__('Комментарии'),
__('Плагины')
);
endif;
endif;
end ( $menu );
while ( prev( $menu ) ) :
$value = explode( ' ', $menu[key($menu)][0] );
if( in_array( $value[0] != NULL?$value[0]:"" , $restricted ) ) :
unset( $menu[key($menu)] );
endif;
endwhile;
}
add_action('admin_menu', 'remove_menu_items');
Как я могу предоставить пользователю доступ только к панели управления?
Конкретнее, я хочу, чтобы они могли видеть только виджет статистики WordPress и виджет Google Analytics. И всё.
Я создал нового пользователя с ролью dashboardvisitors, используя плагин USER ROLE EDITOR.
Теперь уровень 0 плюс доступ на чтение не работает. Панель управления просто пустая.
Добавление прав на редактирование панели ничего не меняет. По-прежнему ничего не отображается (но я не хочу, чтобы они могли редактировать панель управления).
Как мне этого добиться? Это очень важно, так что большое спасибо!

Вы можете добавить это в ваш файл functions.php
:
function remove_menu_items() {
global $menu;
global $user_ID;
if( $user_ID ) :
/* Доступ только к панели управления */
if( current_user_can( 'dashboardvisitors' ) :
$restricted = array(
__('Записи'), // Posts
__('Страницы'), // Pages
__('Ссылки'), // Links
[и т.д...]
);
endif;
endif;
end ( $menu );
while ( prev( $menu ) ) :
$value = explode( ' ', $menu[key($menu)][0] );
if( in_array( $value[0] != NULL?$value[0]:"" , $restricted ) ) :
unset( $menu[key($menu)] );
endif;
endwhile;
}
add_action('admin_menu', 'remove_menu_items');
Эта функция для каждого пользователя с ролью 'dashboardvisitors' при входе в админку WordPress удаляет пункты меню, перечисленные в массиве restricted
. Если вы перечислите все разделы админки кроме панели управления в этом массиве, у вас получится админка только с панелью управления.
