Как удалить раздел из админки WordPress без потери функциональности

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

Почему просто удалять меню в WordPress не всегда безопасно

Удаление пунктов меню в WordPress обычно происходит через функцию remove_menu_page(). Но если раздел отвечает за важные настройки или функционал, пользователи могут потерять возможность управлять сайтом полноценно. Кроме того, некоторые плагины или темы могут обращаться к этим разделам, и их удаление приведёт к сбоям.

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

Как корректно удалить раздел меню с сохранением функциональности

Ниже приведён пример функции, которая удаляет пункт меню с сохранением доступа к функционалу через прямой URL. Допустим, мы хотим убрать раздел «Комментарии» из меню.

function wpdo_remove_comments_menu() {
    // Удаляем пункт меню "Комментарии"
    remove_menu_page('edit-comments.php');
}
add_action('admin_menu', 'wpdo_remove_comments_menu', 999);

После этого пункт меню исчезнет, но доступ к списку комментариев по прямому URL /wp-admin/edit-comments.php останется. Чтобы упростить пользователям навигацию, можно добавить ссылку на эту страницу в другое место, например, в пользовательский виджет или панель.

Добавление ссылки на скрытую страницу в пользовательский виджет

Для удобства пользователей создадим простой виджет, который будет содержать ссылку на скрытую страницу:

class WPDO_Comments_Link_Widget extends WP_Widget {
    function __construct() {
        parent::__construct(
            'wpdo_comments_link',
            'Ссылка на комментарии'
        );
    }

    function widget($args, $instance) {
        echo $args['before_widget'];
        echo '<a href="' . admin_url('edit-comments.php') . '">Управление комментариями</a>';
        echo $args['after_widget'];
    }
}

function wpdo_register_comments_link_widget() {
    register_widget('WPDO_Comments_Link_Widget');
}
add_action('widgets_init', 'wpdo_register_comments_link_widget');

Теперь, даже если пункт меню скрыт, пользователь сможет перейти к управлению комментариями через виджет.

Удаление других разделов меню с учётом особенностей

Подобный подход можно применять и к другим разделам, например, «Записи», «Медиафайлы» или «Плагины».

Например, чтобы убрать пункт «Плагины» из меню, но сохранить доступ к списку плагинов по прямому URL:

function wpdo_remove_plugins_menu() {
    remove_menu_page('plugins.php');
}
add_action('admin_menu', 'wpdo_remove_plugins_menu', 999);

При необходимости можно создавать аналогичные виджеты или добавлять кнопки в другие разделы админки для сохранения удобства навигации.

Ограничение доступа к скрытым страницам

Если вы хотите не только убрать пункт меню, но и ограничить доступ к разделу для определённых ролей без удаления функционала, используйте проверку ролей в хуках:

function wpdo_restrict_plugins_page() {
    if (!current_user_can('manage_options')) {
        wp_redirect(admin_url());
        exit;
    }
}
add_action('load-plugins.php', 'wpdo_restrict_plugins_page');

Так вы сможете скрыть меню и одновременно заблокировать доступ к странице для нежелательных пользователей.

Использование плагинов для управления меню и доступом

Если не хочется писать код, можно применить готовые плагины. Например:

  • Adminimize — позволяет скрывать любые элементы админки для разных ролей.
  • WP Menu Editor — простой редактор меню админки.
  • Clearfy Pro — комплексный плагин для оптимизации и управления настройками WordPress, включая меню.

Эти плагины позволяют максимально гибко настроить интерфейс админки без риска сломать функционал.

Итоги и рекомендации

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

Также не забывайте о контроле доступа — сочетайте скрытие меню с проверками ролей, чтобы защитить важные разделы от неавторизованных пользователей.

Если вы хотите автоматизировать и упростить этот процесс, воспользуйтесь готовыми плагинами или кастомными виджетами, как показано в примерах.

WooCommerce: отладка проблем с оплатой через Яндекс.Кассу
13.05.2026
Как использовать REST API для создания приложений на WordPress
09.12.2025
Автоматическое создание бэкапов WordPress с помощью плагинов
22.11.2025
Как создать адаптивный блок с видео в WordPress с помощью OmniVideo
22.01.2026
WooCommerce: отладка проблем с отправкой писем после оформления заказа
22.04.2026