Как удалить пустое меню в административной панели WordPress

В процессе разработки или настройки WordPress часто возникает ситуация, когда в административной панели появляются пустые или ненужные пункты меню. Это ухудшает восприятие интерфейса и может запутать конечных пользователей и администраторов сайта. В этой статье мы подробно разберём, как найти и удалить пустое меню в админке WordPress, используя как стандартные хуки, так и примеры с кодом.

Почему появляются пустые меню в админке WordPress

Пустые меню могут возникать по нескольким причинам. Часто это связано с некорректной работой плагинов или тем, которые регистрируют свои пункты меню, но по каким-то причинам не добавляют в них подменю или содержимое. Иногда меню остаются после деактивации плагинов, если они не удаляют свои меню правильно.

Другие причины:

  • Ошибки в коде, где регистрируется меню через add_menu_page без подменю или контента;
  • Ручное добавление меню в functions.php или в плагинах с ошибками;
  • Конфликты между плагинами, приводящие к частичному удалению контента меню.

Для устранения таких меню нужно выявить их идентификаторы и удалить через соответствующие хуки.

Как найти ID пустого меню в админке WordPress

Для удаления меню вам нужно знать его slug или идентификатор. Вот несколько способов определения ID пустого меню:

1. Использование браузерных инструментов разработчика

Откройте админку WordPress, найдите пустое меню и кликните по нему правой кнопкой мыши, выберите "Просмотреть код" или "Inspect". В HTML-коде найдите элемент <li> с классом menu-top и атрибутом id. Обычно ID выглядит как toplevel_page_slug.

2. Добавление временного кода для вывода меню

Добавьте в functions.php темы или в плагин следующий код, который выведет все зарегистрированные меню с их slug:

function wpaction_list_admin_menus() {
    global $menu;
    echo '<pre>';
    print_r($menu);
    echo '</pre>';
}
add_action('admin_menu', 'wpaction_list_admin_menus', 9999);

После этого в админке в верхней части страницы вы увидите массив меню с их идентификаторами. Найдите нужный slug пустого меню.

Удаление пустого меню через код в WordPress

После того как вы узнали slug меню, можно безопасно его удалить. Для этого используется функция remove_menu_page().

Пример кода для удаления меню с идентификатором toplevel_page_example:

function wpaction_remove_empty_menu() {
    remove_menu_page('toplevel_page_example');
}
add_action('admin_menu', 'wpaction_remove_empty_menu', 999);

Обратите внимание на приоритет 999, чтобы наш код сработал после регистрации всех меню.

Удаление нескольких пустых меню

Если у вас несколько таких меню, просто вызовите remove_menu_page для каждого:

function wpaction_remove_multiple_empty_menus() {
    $menus_to_remove = [
        'toplevel_page_example1',
        'my_custom_empty_menu',
        'tools.php?page=empty'
    ];
    foreach ($menus_to_remove as $menu_slug) {
        remove_menu_page($menu_slug);
    }
}
add_action('admin_menu', 'wpaction_remove_multiple_empty_menus', 999);

Автоматическое удаление меню от неактивных плагинов с помощью плагина Clearfy Pro

Если в вашем проекте используется плагин Clearfy Pro, он помогает управлять меню и очищать админку от лишних элементов без необходимости писать код.

В Clearfy есть настройка для скрытия меню от неиспользуемых или неактивных плагинов, а также для удаления пустых пунктов. Это особенно полезно, если у вас много плагинов и вы хотите сделать админку более удобной.

Как убрать пустые подменю, оставшиеся после удаления главного меню

Иногда после удаления главного меню остаются пустые подменю. Их тоже можно удалить с помощью remove_submenu_page().

Пример удаления подменю:

function wpaction_remove_empty_submenu() {
    remove_submenu_page('toplevel_page_example', 'toplevel_page_example_submenu');
}
add_action('admin_menu', 'wpaction_remove_empty_submenu', 999);

Первый параметр – slug родительского меню, второй – slug подменю.

Выводы и рекомендации

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

  • Определить slug меню с помощью инструментов разработчика или вывода массива $menu;
  • Использовать remove_menu_page() и remove_submenu_page() с правильным приоритетом;
  • Проверять работу плагинов и тем, чтобы они корректно удаляли свои меню при деактивации;
  • Использовать готовые решения, например, Clearfy Pro, для удобного управления меню без кода.

Используя эти методы, вы легко сможете убрать пустые и ненужные пункты меню, сделав административную панель WordPress чище и понятнее.

Как удалить пустое меню в административной панели WordPress
31.03.2026
Обработка AJAX запросов в WordPress с примерами кода
21.11.2025
Автоматическое удаление неиспользуемых шорткодов в WordPress
03.04.2026
Как добавить настройки для плагинов в WordPress с примерами кода
22.02.2026
Как создать собственный вид мета-блока в WordPress с примерами кода
13.03.2026