Экран WordPress

Оригинальное название: WordPress screen

Коротко

Отдельная страница админки WordPress со своей задачей и идентификатором: список записей, редактор, медиатека, настройки чтения. В коде описывается объектом WP_Screen.

Что такое «Экран WordPress»

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

Что есть у экрана

  • id — имя экрана, своё у каждого: dashboard, edit-post для списка записей, post для редактора, options-general для общих настроек;
  • base — тип экрана без привязки к типу записи: edit — список, post — редактирование;
  • post_type и taxonomy — с каким контентом работает экран.

Получить текущий экран можно функцией get_current_screen(), но только после хука current_screen — раньше она вернёт null.

Пример: скрипт только в редакторе товара

add_action( 'admin_enqueue_scripts', function () {
    $screen = get_current_screen();
    if ( $screen && 'post' === $screen->base && 'product' === $screen->post_type ) {
        wp_enqueue_script( 'shop-admin',
            plugins_url( 'admin.js', __FILE__ ), array(), '1.0', true );
    }
} );

Настройки экрана и помощь

В правом верхнем углу многих экранов есть вкладки «Настройки экрана» и «Помощь». В первой пользователь выбирает видимые колонки таблицы, блоки на консоли и число элементов на странице. Эти предпочтения сохраняются в мета-данных конкретного пользователя, поэтому у каждого сотрудника админка может выглядеть по-своему. Если кто-то жалуется, что у него «пропала колонка» или поле в редакторе, первым делом стоит заглянуть именно сюда.

Вкладку «Помощь» плагин может дополнить своими подсказками методом add_help_tab() объекта экрана. Это удобно для внутренних инструкций: менеджер видит пояснение прямо на той странице, где работает, а не ищет его в отдельном документе.

Обновлено:

Все термины раздела «WordPress»

Что будем искать? Например,Продвижение