Скрываем отдельные пункты меню в админ панели
Для скрытия отдельных пунктов меню в админ панели можно воспользоваться рядом плагинов или достаточно воспользоваться функцией unset() для удаления элементов глобального массива $submenu.
Думаю на примере должно быть понятнее. На своем тестовом сайте в папке темы в файле functions.php вставляем код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
function remove_submenus() { global $submenu; //Dashboard menu unset($submenu['index.php'][10]); // Removes Updates //Posts menu unset($submenu['edit.php'][5]); // Leads to listing of available posts to edit unset($submenu['edit.php'][10]); // Add new post unset($submenu['edit.php'][15]); // Remove categories unset($submenu['edit.php'][16]); // Removes Post Tags //Media Menu unset($submenu['upload.php'][5]); // View the Media library unset($submenu['upload.php'][10]); // Add to Media library //Links Menu unset($submenu['link-manager.php'][5]); // Link manager unset($submenu['link-manager.php'][10]); // Add new link unset($submenu['link-manager.php'][15]); // Link Categories //Pages Menu unset($submenu['edit.php?post_type=page'][5]); // The Pages listing unset($submenu['edit.php?post_type=page'][10]); // Add New page //Appearance Menu unset($submenu['themes.php'][5]); // Removes 'Themes' unset($submenu['themes.php'][7]); // Widgets unset($submenu['themes.php'][15]); // Removes Theme Installer tab //Plugins Menu unset($submenu['plugins.php'][5]); // Plugin Manager unset($submenu['plugins.php'][10]); // Add New Plugins unset($submenu['plugins.php'][15]); // Plugin Editor //Users Menu unset($submenu['users.php'][5]); // Users list unset($submenu['users.php'][10]); // Add new user unset($submenu['users.php'][15]); // Edit your profile //Tools Menu unset($submenu['tools.php'][5]); // Tools area unset($submenu['tools.php'][10]); // Import unset($submenu['tools.php'][15]); // Export unset($submenu['tools.php'][20]); // Upgrade plugins and core files //Settings Menu unset($submenu['options-general.php'][10]); // General Options unset($submenu['options-general.php'][15]); // Writing unset($submenu['options-general.php'][20]); // Reading unset($submenu['options-general.php'][25]); // Discussion unset($submenu['options-general.php'][30]); // Media unset($submenu['options-general.php'][35]); // Privacy unset($submenu['options-general.php'][40]); // Permalinks unset($submenu['options-general.php'][45]); // Misc } add_action('admin_menu', 'remove_submenus'); |
Код работоспособный, заминка может быть если у вас уже установлены сторонние плагины и они добавили пункт в меню администратора. В таких случаях можно воспользоваться функцией вывода массива var_dump() и посмотреть какие именно пункты необходимо убрать.
Пример просмотра списка меню в админ панели:
1 2 3 4 5 6 7 |
function remove_submenus() { global $submenu; echo '<pre>'; var_dump($submenu); echo '</pre>'; } add_action('admin_menu', 'remove_submenus'); |
/*
- Базовый курс по веб-дизайну;
- Верстка сайтов;
- Общий курс по CMS WordPress и продолжение курса по разработке шаблонов;
- Разработка сайтов на PHP.