Админка WordPress: как сделать её удобной для клиентов и эффективной для команды, а не только для разработчиков

Стандартная админ-панель WordPress — это инструмент, созданный «технарями для технарей». Когда вы передаёте сайт клиенту или подключаете контент-менеджера, их встречает лавина непонятных пунктов меню, ненужных виджетов и настроек, в которых легко что-то сломать. Кастомизация админки — это не косметика, а важная часть UX и безопасности. Грамотно настроенная панель управления снижает количество ошибок, ускоряет работу и делает взаимодействие с сайтом приятным. Давайте разберём, как убрать лишнее, добавить нужное и создать по-настоящему удобное рабочее пространство.


Часть 1: Зачем менять стандартную админку? 4 веские причины

  1. Снижение порога входа для клиента: Уберите всё, что не касается его задач (настройки тем, плагинов, инструменты). Клиент должен видеть только «Добавить запись», «Изменить страницу», «Посмотреть заказы».

  2. Повышение безопасности: Скрытие опасных разделов (Плагины, Пользователи, Настройки) от редакторов и авторов.

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

  4. Брендинг и профессионализм: Замена логотига WordPress, цветовой схемы, приветствия. Сайт выглядит как законченный продукт, а не «ещё один WordPress».

Часть 2: Базовая очистка: что можно убрать сразу (код в functions.php)

1. Удаление ненужных виджетов с дашборда:

php
add_action('wp_dashboard_setup', 'remove_dashboard_widgets'); function remove_dashboard_widgets() { remove_meta_box('dashboard_primary', 'dashboard', 'side'); // Новости WordPress remove_meta_box('dashboard_quick_press', 'dashboard', 'side'); // Быстрая публикация remove_meta_box('dashboard_right_now', 'dashboard', 'normal'); // Обзор remove_meta_box('dashboard_activity', 'dashboard', 'normal'); // Активность // Для WooCommerce remove_meta_box('wc_admin_dashboard_setup', 'dashboard', 'normal'); }

2. Упрощение панели админ-бара (верхней черной полосы):

php
add_action('admin_bar_menu', 'remove_admin_bar_links', 999); function remove_admin_bar_links($wp_admin_bar) { $wp_admin_bar->remove_node('wp-logo'); // Логотип WordPress $wp_admin_bar->remove_node('comments'); // Комментарии $wp_admin_bar->remove_node('new-content'); // Пункт "Добавить" // $wp_admin_bar->remove_node('search'); // Поиск }

3. Скрытие ненужных пунктов меню для определенных ролей:

php
add_action('admin_menu', 'remove_menus'); function remove_menus() { $user = wp_get_current_user(); if (in_array('editor', $user->roles)) { // Для редактора remove_menu_page('index.php'); // Консоль (можно оставить) remove_menu_page('edit-comments.php'); // Комментарии remove_menu_page('themes.php'); // Внешний вид remove_menu_page('plugins.php'); // Плагины remove_menu_page('users.php'); // Пользователи remove_menu_page('tools.php'); // Инструменты remove_menu_page('options-general.php'); // Настройки } }

Часть 3: Улучшение редактора записей (Gutenberg и Classic)

Для Gutenberg (блочный редактор):

  1. Отключение неиспользуемых блоков: Часто 80% блоков не используются.

    php
    add_filter('allowed_block_types_all', 'allowed_block_types', 10, 2); function allowed_block_types($allowed_blocks, $post) { if ($post->post_type === 'post') { return array( 'core/paragraph', 'core/heading', 'core/image', 'core/list', 'core/quote', // Только нужные блоки ); } return $allowed_blocks; }
  2. Кастомизация палитры цветов и размеров шрифтов: Согласуйте с бренд-гайдлайнами клиента.

    php
    add_theme_support('editor-color-palette', array( array('name' => 'Брендовый синий', 'slug' => 'brand-blue', 'color' => '#007acc'), array('name' => 'Светло-серый', 'slug' => 'light-gray', 'color' => '#f5f5f5'), ));

Для Classic Editor (или как дополнение):

  • Добавление своих кнопок в панель инструментов TinyMCE:

    php
    add_filter('mce_buttons', 'custom_tinymce_buttons'); function custom_tinymce_buttons($buttons) { array_unshift($buttons, 'styleselect'); // Добавляем выпадающий список стилей return $buttons; } add_filter('tiny_mce_before_init', 'custom_tinymce_styles'); function custom_tinymce_styles($settings) { $style_formats = array( array('title' => 'Кнопка', 'inline' => 'a', 'classes' => 'btn'), array('title' => 'Предупреждение', 'block' => 'div', 'classes' => 'alert'), ); $settings['style_formats'] = json_encode($style_formats); return $settings; }

Часть 4: Создание полезного дашборда (главного экрана)

Пустой дашboard — это упущенная возможность. Заполните его полезными виджетами:

  1. Кастомный виджет с инструкцией для клиента: HTML, ссылки на важные страницы, контакты поддержки.

    php
    add_action('wp_dashboard_setup', 'add_custom_dashboard_widget'); function add_custom_dashboard_widget() { wp_add_dashboard_widget('custom_help_widget', 'Инструкция по работе с сайтом', 'custom_dashboard_help'); } function custom_dashboard_help() { echo '<p>Добро пожаловать! <a href="/wp-admin/post-new.php">Добавить новость</a></p>'; echo '<p><strong>Техподдержка:</strong> support@site.ru</p>'; }
  2. Виджет с последними заказами (для WooCommerce), задачами, статистикой.

  3. Виджет для быстрого создания контента (форма добавления новой записи без перехода в раздел).

Часть 5: Плагины для комплексной кастомизации

Иногда кодом делать долго. На помощь придут плагины:

  • Admin Menu Editor: Позволяет визуально перетаскивать, переименовывать, скрывать пункты меню, создавать разделители и кастомные страницы. Незаменим.

  • White Label CMS: Позволяет сменить логотип, цвета, футер в админке, убрать упоминания о WordPress. Для полного ребрендинга.

  • Advanced Custom Fields: Можно создавать изысканные интерфейсы для редактирования настроек сайта (опции темы) прямо в админке, без необходимости кодить сложные страницы.

  • User Role Editor: Для тонкой настройки прав, которая дополняет скрытие меню.

Часть 6: Кастомизация для WooCommerce

Админка WooCommerce может быть перегружена. Что можно сделать:

  1. Скрыть ненужные отчеты и виджеты.

  2. Создать упрощенный интерфейс для менеджера заказов (плагины вроде Shop Manager Admin).

  3. Добавить кастомные колонки в список товаров (например, «Прибыль», «Остаток на складе»).

  4. Упростить форму добавления товара, спрятав неиспользуемые вкладки.

Часть 7: Безопасность и доступ

  1. Всегда оставляйте путь к отступлению: Убедитесь, что у вас (администратора) есть доступ ко всем скрытым разделам через прямой URL или через отдельный «суперадминский» плагин.

  2. Тестируйте под разными ролями: Войдите как редактор, автор, клиент. Удобно ли?

  3. Редирект с консоли: Если вы скрыли дашборд для некоторых ролей, перенаправляйте их сразу на страницу записей.

    php
    add_action('admin_init', 'redirect_dashboard'); function redirect_dashboard() { if (current_user_can('editor') && $_SERVER['PHP_SELF'] == '/wp-admin/index.php') { wp_redirect(admin_url('edit.php')); } }

Заключение

Админка WordPress — это лицо вашего продукта для тех, кто с ним работает ежедневно. Потратив несколько часов на её адаптацию под конкретные нужды, вы:

  • Снизите количество обращений в поддержку («А где мне это найти?»)

  • Уменьшите риск случайных поломок

  • Повысите лояльность клиента (профессиональный вид)

  • Ускорите работу своей команды

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