удаляем ненужные пункты подпункты меню админки wordpress

Изменяем админку wordpress: удаляем ненужные пункты/подпункты меню

Здравствуйте, сегодня приступим к процессу оптимизации админки wordpress: удалим ненужные пункты/подпункты меню с помощью кода или с помощью плагина.


Скачать исходники для статьи можно ниже

Для начала вам, возможно, понадобиться интересный плагин – userSwitcher – позволяющий переключаться между пользователями сайта, имеющими разные роли. Страница плагина – “wordpress.org/plugins/userswitcher/”:

изменить админку wordpress вручную и с плагинами

Приступим же к изменению админки wordpress, а именно: Удаляем ненужные пункты/подпункты меню админки.

Можно воспользоваться для данного процесса как плагином, так и вручную с помощью добавления кода, рассмотрим оба данных способа ниже:

1. С помощью плагина.
Плагин – User Admin Simplifier.
Страница плагина: “wordpress.org/plugins/user-admin-simplifier/screenshots/”

Установка плагина стандартная – через панель управления – пункт “Плагины”, подпункт “Добавить новый”, в строку поиска вводим User Admin Simplifier – устанавливаем и активируем.
После активации плагина в пункте “Инструменты” появиться новый подпункт – User Admin Simplifier – заходим в него, выбираем пользователя и настраиваем под него пункты/подпункты меню админки:

удаляем пункт/подпункты меню админки wordpress

2. Вручную – с помощью кода:

2.1. Удаляем пункты меню:
Для этого можно воспользоваться следующим кодом – его нужно разместить в файле functions.php:

add_action( 'admin_menu', 'remove_menus' );
function remove_menus(){
	if ( !current_user_can( 'administrator' ) ) {
		remove_menu_page( 'tools.php' );
		remove_menu_page( 'options-general.php' );
                remove_menu_page( 'edit.php?post_type=page' );
	}
}

Удаление будет производиться для всех кроме Админа сайта, благодаря строчке:

if ( !current_user_can( 'administrator' ) ) {
...
}

Чтобы удалить другие пункты меню:

  remove_menu_page( 'index.php' );                  //Dashboard Консоль
  remove_menu_page( 'edit.php' );                   //Posts Записи
  remove_menu_page( 'upload.php' );                 //Media Медиафайлы
  remove_menu_page( 'edit.php?post_type=page' );    //Pages Страницы
  remove_menu_page( 'edit-comments.php' );          //Comments Комментарии
  remove_menu_page( 'themes.php' );                 //Appearance Внешний вид
  remove_menu_page( 'plugins.php' );                //Plugins Плагины
  remove_menu_page( 'users.php' );                  //Users Пользователи
  remove_menu_page( 'tools.php' );                  //Tools Инструменты
  remove_menu_page( 'options-general.php' );        //Settings Настройки

2.2. Удаляем подпункты меню:

Для подменю код удаления будет выглядеть так:

remove_submenu_page( $menu_slug, $submenu_slug );

Например, для удаления подпункта “Виджеты” пункта “Внешний вид” код будет следующим:

remove_submenu_page( 'themes.php', 'widgets.php' );

Здесь первый параметр, в нашем примере: themes.php (отвечает за пункт меню “Внешний вид”) вы можете заменить его на следующие:

For Dashboard: ‘index.php’
For Posts:’edit.php’
For Media: ‘upload.php’
For Links: ‘link-manager.php’
For Pages: ‘edit.php?post_type=page’
For Comments: ‘edit-comments.php’
For Custom Post Types: ‘edit.php?post_type=your_post_type’
For Appearance: ‘themes.php’
For Plugins:’plugins.php’
For Users: ‘users.php’
For Tools: ‘tools.php’
For Settings: ‘options-general.php’
For Settings in the Network Admin pages: ‘settings.php’

Чтобы узнать второй параметр – вам понадобиться зайти в нужный подпункт меню админки и посмотреть в адресную строку браузера, например: зайдем в пункт “Инструменты” и его подпункт “Импорт”:

удаляем пункты и подпункт меню админки wordpress

Соответственно за подпункт “Импорт” отвечает – import.php

На этом все – удачи!

Введите свой email адрес для того, чтобы подписаться на мой блог:


knopkisoc

Изменяем админку wordpress: удаляем ненужные пункты/подпункты меню: 1 комментарий

  1. Андрей

    Хорошая статья, спасибо. Но нужна помощь. Установил плагин “OSD Remove All WordPress Branding”, он создал в меню “Настройки” свое подменю со ссылкой:

    …./wp-admin/options-general.php?page=osd-remove-all-wp-creds-options

    Пробую код:

    add_action( ‘admin_menu’, ‘xelly_remove_sub_menu_items’ );

    function xelly_remove_sub_menu_items() {
    remove_submenu_page( ‘options-general.php’, ‘options-general.php?page=osd-remove-all-wp-creds-options’ );
    }

    Но подменю остается на месте. Попробовал удалить другие подменю с “красивыми” ссылками – все работает. Выше представленный вами плагин – тоже работает, но не подходит, – хотелось бы обойтись парой строк кода.
    Заранее спасибо за любые советы.

Добавить комментарий