get_current_screen() | 현재 페이지 정보 출력

|

요약

현재 페이지에 있는 정보를 출력합니다. 관리자 페이지에서 값을 가져올 때 많이 사용됩니다.

사용법

print_r(get_current_screen());

현재 페이지에 있는 정보를 출력합니다. 배열 값이 출력되기 때문에 print_r() 로 감싸서 출력해야 합니다.

get_current_screen()->post_type;

현재 페이지의 포스트 타입을 출력합니다.

$screen = get_current_screen();

if ($screen->id === 'post') {
    echo 'post';
}

if (get_current_screen()->post_type === 'post') {
    echo 'post';
}

if 문을 활용하면 위와 같이 분기점을 두어 사용할 수 있습니다. 현재 페이지에서만 작동하는 함수를 등록하거나, 앵커(wp_enqueue)를 활용하여 CSS 나 JavaScript 를 등록할 수도 있습니다.

edit_form_advanced 활용

add_action('edit_form_advanced' , function () {
    if (get_current_screen()->post_type === 'post') {
        echo 'post';
    });
}

위와 같이 활용하게 되면

get_current_screen() 함수가 정의되지 않고 실행되면 에러가 나게 됩니다. edit_form_advanced 를 활용하면 'post' 를 페이지의 모든 출력이 완료된 다음 출력하게 됩니다.

사용가능위치

페이지              $SCREEN_ID           파일
-----------------  -------------------  -----------------------
Media Library      upload               upload.php
Comments           edit-comments        edit-comments.php
Tags               edit-post_tag        edit-tags.php
Plugins            plugins              plugins.php
Links              link-manager         link-manager.php
Users              users                users.php
Posts              edit-post            edit.php
Pages              edit-page            edit.php
Edit Site: Themes  site-themes-network  network/site-themes.php
Themes             themes-network       network/themes
Users              users-network        network/users
Edit Site: Users   site-users-network   network/site-users
Sites              sites-network        network/sites

참조

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

클릭하여 복사