Это первый пост за последний год, на этом блоге. В котором я расскажу как удалять пункты меню в админ-панели WordPress. Чтобы сразу было понятно о каком меню идет речь посмотрите на картинку:
Удалять лишние меню может пригодится, когда сайт делается для клиентов или просто, если какие-то из пунктов меню лишние и мозолят вам глаза, каждый раз, когда вы заходите в админку WordPress. К таким пунктам, например, можно отнести "Ссылки", очень часто ссылками блогеры не пользуются и пункт меню можно смело удалить.
Пример удаления пункта меню "ссылки" в админ-панели ВП:
function remove_menus () { global $menu; $restricted = array(__('Links')); end ($menu); while (prev($menu)){ $value = explode(' ',$menu[key($menu)][0]); if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);} } } add_action('admin_menu', 'remove_menus');
Возможно на каких-то сайтах сделанных на Вордпресс не используются "Комментарии", тогда можно удалить еще и блок комментариев из меню:
function remove_menus () { global $menu; $restricted = array( __('Links'), __('Comments') ); end ($menu); while (prev($menu)){ $value = explode(' ',$menu[key($menu)][0]); if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);} } } add_action('admin_menu', 'remove_menus');
Так, изменяя переменную $restricted, можно удалить хоть все пункты меню.
Вот весь список названий пунктов меню:
$restricted = array( __('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins') );
Https://import-sigaret.live https://import-sigaret.live американские сигареты: купить сигареты. import-sigaret.shop |
или можно так:
add_action('admin_menu', 'fb_menu'); function fb_menu() { remove_menu_page('link-manager.php'); remove_menu_page('tools.php'); remove_menu_page('edit-comments.php'); }
Шикарно, как раз сейчас занимаюсь клиентским сайтом, раньше убирал ненужные пункты с помощью плагина.
спасибо. а то стоит лишнее
Скрыть хорошо, а как добавить произвольный пункт меню или подменю? Буду благодарен за ответ.
Артем,
http://codex.wordpress.org/Function_Reference/add_menu_page
http://codex.wordpress.org/Function_Reference/add_submenu_page
Хорошая вещь, только скрытие пунктов не запрещает юзеру напрямую получить доступ к этим функциям 😉
И пару вопросов
1. Как это сделать в зависимости от роли юзера.
Я, разрабатывая сайт (админ) хочу видеть всё, а юзеру (редактор) всё не нужно. Конечно большинство запретов решается плагами типа role manager но всё равно остаются пункты (от плагов, например) которые не нужно показывать клиенту.
2. Нужно скрыть не полностью раздел меню, а только несколько пунктов. Например из параметров не показывать пермалинки и индексацию. Как это сделать?
Спасибо статья очень помогла. А то совсем с рубриками запарился.
Спасибо огромное.
Давно искал. Перелопатил в интернете кучу сайтов и наконец нашел именно то, что искал.
С уважением, Сергей
ct, спасибо, не знал про эту функцию. Она, кстати, появилась в версии 3.1.0, для более ранних версий материал этой статьи - самое то.