Как убрать лишние пункты из админ-меню WordPress для редакторов и клиентов

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

Сначала проверьте, какие разделы видны пользователю

WordPress формирует админ-меню с учётом возможностей роли. Поэтому у обычного редактора стандартно нет доступа к настройкам сайта, управлению плагинами и темами. Если такие пункты всё же отображаются, проверьте, не выданы ли пользователю дополнительные права и не добавляет ли меню установленный плагин.

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

Если лишний пункт добавлен плагином, сначала выясните, какой именно. Название страницы часто видно в адресе при переходе по пункту: например, в admin.php?page=plugin-settings значение после page= обычно является идентификатором страницы. Для удаления пункта из меню кода потребуется точный идентификатор, а не надпись, которую видит пользователь.

Скрываем выбранные пункты с помощью кода

Для небольшого набора изменений достаточно хука admin_menu и функций remove_menu_page() и remove_submenu_page(). Пример ниже убирает некоторые пункты у пользователей без возможности manage_options, оставляя их видимыми для тех, у кого эта возможность есть. Обычно это администраторы, но на сайте с изменёнными ролями правило может отличаться.

Добавьте код в файл дочерней темы functions.php или в собственный небольшой плагин. Если редактируете functions.php, вставляйте фрагмент в уже открытый PHP-код — не добавляйте второй тег <?php. Перед правкой файла сохраните его копию; синтаксическая ошибка может вызвать сбой сайта.

add_action( 'admin_menu', 'wpsystem_hide_admin_menu_items', 999 );

function wpsystem_hide_admin_menu_items() {
    // Оставляем меню без изменений пользователям с manage_options.
    if ( current_user_can( 'manage_options' ) ) {
        return;
    }

    // Удаляем выбранные пункты верхнего уровня.
    remove_menu_page( 'edit-comments.php' );
    remove_menu_page( 'tools.php' );

    // Удаляем только подпункт, не скрывая всё меню «Внешний вид».
    remove_submenu_page( 'themes.php', 'theme-editor.php' );
}

Удалите из примера строки для разделов, которые пользователю нужны. Не скрывайте редактору меню записей или страниц только ради более короткого списка, если он должен публиковать материалы. Название PHP-функции в примере имеет префикс, чтобы снизить вероятность конфликта с кодом темы или другого плагина.

В качестве идентификаторов стандартных пунктов WordPress используются, в частности, index.php для главной страницы админки, edit.php для записей, upload.php для медиафайлов, edit.php?post_type=page для страниц, edit-comments.php для комментариев, themes.php для раздела тем и plugins.php для плагинов. Удалять меню пользователей и настроек обычно не требуется: стандартным редакторам WordPress эти разделы и так не показывает.

Чтобы скрыть отдельный подпункт, передайте в remove_submenu_page() сначала идентификатор родительского меню, затем идентификатор подпункта. Например, в коде выше убирается редактор тем, но остальные пункты раздела «Внешний вид» остаются. Для меню плагина значения могут отличаться; проверьте адрес страницы и при необходимости документацию самого плагина.

Когда удобнее настроить меню через плагин

Если нужно менять меню без правки PHP, можно использовать плагин для управления админ-меню, например Admin Menu Editor. Такой вариант подходит, когда список пунктов часто меняется или его удобнее настраивать в интерфейсе. Перед установкой проверьте, что плагин поддерживается вашей версией WordPress и позволяет настроить нужный сценарий для ролей пользователей.

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

Скрытие меню не ограничивает доступ

Функции удаления меню меняют список ссылок в админке, а не права пользователя. Если у человека есть разрешение на действие, он может попытаться открыть страницу напрямую по её адресу. Стандартные страницы WordPress обычно дополнительно проверяют возможности пользователя, но сторонние плагины реализуют проверки по-разному.

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

Как проверить результат и не закрыть нужный раздел

После изменения откройте админку под тестовой учётной записью. Убедитесь, что лишние пункты пропали, а рабочие разделы — например, записи, страницы и медиафайлы — остались. Затем попробуйте открыть нужный экран обычным способом и проверьте, что пользователь может выполнить свои задачи.

Отдельно проверьте учётную запись администратора: в приведённом примере пользователь с manage_options должен по-прежнему видеть удалённые пункты. Если роль клиента тоже получила эту возможность, условие оставит меню для неё. В таком случае пересмотрите условие под реальные возможности ролей, а не полагайтесь на название роли.

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

Как уменьшить размер базы данных WordPress и удалить лишний мусор
26.10.2026
Как включить и настроить page cache в WordPress
22.10.2026
Как отключить лишние стили и скрипты плагинов в WordPress
15.10.2026
Как отключить ревизии записей в WordPress или ограничить их количество
29.10.2026
Как найти и удалить неиспользуемые медиафайлы в WordPress
11.10.2026