удаляем ненужные пункты подпункты меню админки 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’ );
    }

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

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *