Секреты админки WordPress: настройка под себя для эффективной работы
Админка WordPress — это не статичный интерфейс, а гибкий рабочий стол, который можно настроить под свои задачи. Большинство пользователей работают с дефолтными настройками, теряя часы на рутину. Вот как превратить стандартную панель управления в мощный инструмент продуктивности.
1. Мастер-класс по Screen Options (Параметры экрана)
Секрет: У каждой страницы админки есть скрытая панель Screen Options в правом верхнем углу. Кликните — и откроется мир возможностей.
Практическое применение:
- На странице записей: Добавьте колонки «ID», «Количество комментариев», «Просмотры» (если есть метрика). Уберите лишнее — например, «Формат» или «Обсуждение».
- В редакторе: Включите дополнительные поля «Эксперт» (Excerpt), «Обсуждение» (для управления комментариями), «Автор». Сразу видно всё, что нужно для работы.
// Можно задать свои колонки через functions.php add_filter('manage_posts_columns', function($columns) { $columns['post_id'] = 'ID'; $columns['thumbnail'] = 'Миниатюра'; return $columns; }); add_action('manage_posts_custom_column', function($column, $post_id) { if ($column === 'post_id') echo $post_id; if ($column === 'thumbnail') echo get_the_post_thumbnail($post_id, [50,50]); }, 10, 2);
2. Кастомные статусы постов для рабочих процессов
Секрет: Стандартные «Черновик» и «Опубликовано» — это только начало.
Создайте свою систему статусов:
add_action('init', function() { register_post_status('on_edit', [ 'label' => 'На проверке', 'public' => false, 'exclude_from_search' => true, 'show_in_admin_all_list' => true, 'show_in_admin_status_list' => true, 'label_count' => _n_noop('На проверке <span class="count">(%s)</span>', 'На проверке <span class="count">(%s)</span>'), ]); register_post_status('ready_to_publish', [ 'label' => 'Готово к публикации', 'public' => false, 'exclude_from_search' => true, 'show_in_admin_all_list' => true, 'show_in_admin_status_list' => true, 'label_count' => _n_noop('Готово к публикации <span class="count">(%s)</span>', 'Готово к публикации <span class="count">(%s)</span>'), ]); });
Бонус: Добавьте цветовые метки для статусов через CSS в админке:
add_action('admin_head', function() { echo '<style> .status-on_edit { background: #fff8e5 !important; } .status-ready_to_publish { background: #e5fff0 !important; } .column-status .status-on_edit:after { content: "🕐"; margin-left: 5px; } </style>'; });
3. Умные быстрые действия (Quick Edit)
Секрет: В списке записей наведите курсор на любую запись — появится меню быстрых действий. Но можно расширить его!
Добавьте свои действия:
add_filter('post_row_actions', function($actions, $post) { // Добавляем кнопку "Дублировать" $actions['duplicate'] = sprintf( '<a href="%s" title="Создать копию">Копировать</a>', wp_nonce_url(admin_url('admin.php?action=duplicate_post&post=' . $post->ID), 'duplicate_post_' . $post->ID) ); // Кнопка "Предпросмотр в AMP" (если используется AMP) if ($post->post_status === 'publish') { $actions['amp_preview'] = sprintf( '<a href="%s" target="_blank">AMP</a>', get_permalink($post->ID) . 'amp/' ); } return $actions; }, 10, 2);
4. Кастомизация главного дашборда
Секрет: Виджеты на главной — не священная корова. Удалите всё лишнее и создайте свой дашборд.
Шаги:
- Кликните «Настройка экрана» → уберите галочки со всех ненужных виджетов
- Перетащите нужные виджеты в удобном порядке
- Добавьте свои виджеты:
add_action('wp_dashboard_setup', function() { // Удаляем стандартные виджеты remove_meta_box('dashboard_primary', 'dashboard', 'side'); // Новости WordPress remove_meta_box('dashboard_quick_press', 'dashboard', 'side'); // Быстрая публикация // Добавляем свой виджет wp_add_dashboard_widget( 'custom_stats_widget', 'Моя статистика', function() { $post_count = wp_count_posts()->publish; $page_count = wp_count_posts('page')->publish; echo "<p>📊 <strong>Статистика сайта:</strong></p>"; echo "<p>Записей: {$post_count}</p>"; echo "<p>Страниц: {$page_count}</p>"; echo "<p>Последняя публикация: " . get_the_date('d.m.Y', get_latest_post()) . "</p>"; } ); });
5. Расширенный поиск в админке
Секрет: Поле поиска вверху админки ищет только по заголовкам постов. Расширьте его возможности:
add_action('pre_get_posts', function($query) { if (is_admin() && $query->is_main_query() && $query->get('s')) { // Ищем также по ID if (is_numeric($query->get('s'))) { $query->set('post__in', [intval($query->get('s'))]); $query->set('s', ''); } // Ищем по содержимому и метаполям $meta_query = [ 'relation' => 'OR', [ 'key' => '_custom_field', 'value' => $query->get('s'), 'compare' => 'LIKE' ] ]; $query->set('meta_query', $meta_query); } });
6. Боковая панель-хаб для часто используемых элементов
Секрет: Создайте плавающую панель с самыми нужными ссылками:
add_action('admin_footer', function() { if (is_admin()) { echo ' <div id="admin-quickbar" style="position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:9999;"> <div style="background:#fff;border:1px solid #ccd0d4;border-radius:4px;padding:10px;box-shadow:0 2px 5px rgba(0,0,0,.1);"> <p style="margin:0 0 10px 0;font-weight:bold;">Быстрые ссылки</p> <ul style="margin:0;padding:0;list-style:none;"> <li><a href="' . admin_url('post-new.php') . '" style="display:block;padding:5px 0;">➕ Новая запись</a></li> <li><a href="' . admin_url('upload.php') . '" style="display:block;padding:5px 0;">🖼️ Медиатека</a></li> <li><a href="' . admin_url('admin.php?page=wc-admin') . '" style="display:block;padding:5px 0;">📊 Аналитика</a></li> </ul> </div> </div>'; } });
7. Горячие клавиши для админки
Секрет в коде functions.php:
add_action('admin_enqueue_scripts', function() { wp_enqueue_script('admin-shortcuts', 'path/to/custom-admin.js'); });
А в custom-admin.js:
document.addEventListener('keydown', function(e) { // Ctrl+Shift+N - новая запись if (e.ctrlKey && e.shiftKey && e.key === 'N') { window.location.href = '/wp-admin/post-new.php'; } // Ctrl+Shift+M - медиатека if (e.ctrlKey && e.shiftKey && e.key === 'M') { window.location.href = '/wp-admin/upload.php'; } // Ctrl+/ - поиск в админке if (e.ctrlKey && e.key === '/') { document.getElementById('admin-search-input').focus(); e.preventDefault(); } });
8. Персонализированная цветовая схема и UX
Через functions.php можно:
// Изменить цвет админ-панели для разных пользователей add_action('admin_head', function() { $user = wp_get_current_user(); if (in_array('editor', $user->roles)) { echo '<style>#adminmenu { background: #2c3e50 !important; }</style>'; } }); // Добавить кастомные CSS-классы для разных типов контента add_filter('admin_body_class', function($classes) { if (get_post_type() === 'product') { $classes .= ' post-type-product'; } return $classes; });
9. Умные уведомления и напоминания
Создайте систему внутренних заметок:
add_action('admin_notices', function() { // Напоминание о незаполненных полях global $post; if ($post && empty(get_post_meta($post->ID, '_seo_description', true))) { echo '<div class="notice notice-warning"> <p>⚠️ Заполните SEO-описание для этой страницы</p> </div>'; } // Уведомление о запланированных публикациях $scheduled = get_posts([ 'post_status' => 'future', 'posts_per_page' => 3 ]); if ($scheduled) { echo '<div class="notice notice-info"> <p>📅 Запланированы публикации: '; foreach ($scheduled as $post) { echo get_the_title($post->ID) . ' (' . get_the_date('d.m.Y H:i', $post->ID) . '), '; } echo '</p></div>'; } });
10. Экспорт ваших настроек админки
Секрет: Создайте плагин-конфигуратор, который хранит все ваши настройки:
/* Plugin Name: Мой Админ-Конфигуратор Description: Все мои настройки админки WordPress */ // Весь ваш кастомный код из этой статьи // ... // Добавьте страницу экспорта настроек add_action('admin_menu', function() { add_options_page('Экспорт настроек', 'Мои настройки', 'manage_options', 'my-admin-settings', function() { echo '<div class="wrap"><h2>Экспорт настроек админки</h2>'; echo '<textarea style="width:100%;height:300px;">'; // Здесь можно вывести ваш код для копирования echo htmlspecialchars(file_get_contents(__FILE__)); echo '</textarea></div>'; }); });
Чек-лист внедрения
- Неделя 1: Настройте Screen Options под каждый тип контента
- Неделя 2: Добавьте свои статусы постов и цветовые метки
- Неделя 3: Кастомизируйте дашборд и боковую панель
- Неделя 4: Внедрите горячие клавиши и умный поиск
Итог
Админка WordPress — это пластилин в руках того, кто знает её возможности. Потратив 10-15 часов на первоначальную настройку, вы будете экономить минимум 1-2 часа в неделю на рутинных операциях. Ваша админка должна работать на вас, а не вы на неё.
Золотое правило: Каждый раз, когда вы ловите себя на мысли «мне приходится делать слишком много кликов для этой задачи» — остановитесь и настройте админку так, чтобы эта задача решалась в 1-2 клика.