Функция GET_CURRENT_SCREEN() │ WP 3.1.0
Функция get_current_screen()
используется для получения объекта текущего экрана в WordPress. Это позволяет разработчикам получить доступ к информации о том, какой именно экран сейчас открыт в административной панели.
Использование
Функция применяет объект WP_Screen
.
Синтаксис
get_current_screen();
Возвращаемое значение
Функция возвращает объект WP_Screen
, если экран определён, или null
, если экран не задан.
Пример использования
1. Примеры идентификаторов экранов в WordPress
Экран | Файл | Идентификатор |
---|---|---|
Комментарии | /wp-admin/edit-comments.php | edit-comments |
Темы | /wp-admin/themes.php | themes |
Плагины | /wp-admin/plugins.php | plugins |
Записи | /wp-admin/post.php | post |
Новая запись | /wp-admin/post-new.php | post |
Страницы | /wp-admin/edit.php | edit-page |
Таксономии | /wp-admin/edit-tags.php | edit-{$taxonomy} |
Медиа | /wp-admin/upload.php | upload |
Пользователи | /wp-admin/users.php | users |
2. Выполнение кода на странице виджетов
Чтобы выполнить код только на странице виджетов, можно использовать следующий пример:
add_action( 'current_screen', 'wpkama_widgets_screen' );
function wpkama_widgets_screen(){
$screen = get_current_screen();
if( 'widgets' === $screen->id ){
// Выполняем код только на странице администрирования: Виджеты
}
}
3. Добавление скрипта только на странице редактирования записей
Этот пример демонстрирует, ка�� добавить JavaScript-код в нижней части административной панели, только на страницах редактирования или создания записей.
add_filter( 'admin_footer', 'post_save_accesskey' );
function post_save_accesskey(){
// Если это не страница создания или редактирования записи, выходим
if( get_current_screen()->id !== 'post' )
return;
?>
В этом примере объект get_current_screen()
может содержать следующие данные:
WP_Screen Object
(
[id] => page
[base] => post
[post_type] => page
...
)
4. Добавление вкладки помощи на административной странице
С помощью функции add_help_tab()
можно создать вспомогательную вкладку на вашей странице административной панели:
add_action( 'admin_menu', 'my_admin_add_page' );
function my_admin_add_page(){
$page_hook = add_options_page( 'Настройки', 'Настройки', 'manage_options', 'my_opt_page_slug', 'my_admin_page' );
// Добавляем вкладку помощи при загрузке страницы
add_action( "load-{$page_hook}", 'my_admin_add_help_tab' );
}
function my_admin_page(){
echo 'Код вашей страницы';
}
function my_admin_add_help_tab(){
$screen = get_current_screen();
// Содержимое для вкладки помощи
$screen->add_help_tab( array(
'id' => 'my_help_tab',
'title' => 'Помощь по странице',
'content' => 'Поддерживающее описание, поясняющее неясные моменты на странице
',
) );
}
Заметки
- Глобальная переменная
WP_Screen
.$current_screen
— объект текущего экрана в WordPress.
История изменений
- С введением версии 3.1.0.
Функция get_current_screen()
является полезным инструментом для разработчиков, позволяя адаптировать интерфейс и функциональность в зависимости от того, какие операции выполняет пользователь.