programing

현재 페이지가 wordpress에서 플러그인 관리 패널인지 확인하는 방법

megabox 2023. 2. 15. 21:48
반응형

현재 페이지가 wordpress에서 플러그인 관리 패널인지 확인하는 방법

현재 플러그인의 관리 페이지에 있는지 확인하는 방법을 알고 싶습니다.이 플러그인 사용에 대한 통계를 포함하는 페이지를 표시하는 메뉴 항목을 사용하여 플러그인을 만들었습니다.그 때문에, 커스텀 JQuery 플러그인과 CSS를 사용하고 있습니다.이 페이지 이외에서는 사용하지 않습니다.

그래서 플러그인의 스타일과 JS를 큐잉할 것인지 아닌지를 어떻게 확인할 것인지 궁금합니다.

여기 제 enqueue 스타일 코드입니다.

function bridge_style_enqueuer() {
   wp_register_style( "bridge_display_style", WP_PLUGIN_URL.'/symfony-bridge/chosen.css');
   wp_register_style( "bridge_display_style_tb", WP_PLUGIN_URL.'/symfony-bridge/bootstrap.min.css');
   wp_enqueue_style( 'bridge_display_style' );
   wp_enqueue_style( 'bridge_display_style_tb' );
}
add_action( 'admin_init', 'bridge_style_enqueuer' );

Js도 똑같이 해요.

function bridge_script_enqueuer() {
   wp_register_script( "bridge_script", WP_PLUGIN_URL.'/symfony-bridge/bridge.js', array('jquery'),FASLE, TRUE);
   wp_register_script( "bridge_chosen_script", WP_PLUGIN_URL.'/symfony-bridge/chosen.js', array('jquery'),FASLE, TRUE);
   wp_register_script( "bridge_chosen_script_tb", WP_PLUGIN_URL.'/symfony-bridge/bootstrap.min.js', array('jquery'),FASLE, TRUE);

    wp_enqueue_script( 'bridge_script' );
    wp_enqueue_script( 'bridge_chosen_script' );
    wp_enqueue_script( 'bridge_chosen_script_tb' );
}
 add_action( 'admin_init', 'bridge_script_enqueuer' );

WP Screen API를 사용할 수 있습니다.

$screen = get_current_screen();

if ( in_array( $screen->id, array( 'some_admin_page', 'another_admin_page' ) ) )
{
    wp_enqueue_script( 'bridge_script' );
}

스크립트는 에 등록하기만 하면 됩니다.init또는admin_enqueue_scripts(사용자가 한 것처럼) 후크하고 "페이지 내"에 큐잉합니다.즉, 콜백 함수로 큐잉합니다.add_menu_page().

적절한 방법은 및 을 사용하는 것입니다.

add_action( 'admin_menu', 'add_page_so_20162413' );

function add_page_so_20162413()
{
    $my_page = add_menu_page( /* etc */ );
    add_action( "admin_print_scripts-$my_page", 'enqueue_so_20162413' );
}

function enqueue_so_20162413()
{
    wp_enqueue_script( /* etc */ );
    wp_enqueue_style( /* etc */ );
}

Diggy의 제안은 우리가 이 방법으로 대기하는 데 문제가 있을 때 가장 좋은 제안입니다.

js를 훅으로 넣으면 됩니다.admin_enqueue_scripts-- http://codex.wordpress.org/Plugin_API/Action_Reference/admin_enqueue_scripts 입니다.참고로 스크립트나 css를 추가하려면 후크를 사용해야 합니다.wp_enqueue_scripts.

언급URL : https://stackoverflow.com/questions/20162413/how-to-check-if-the-current-page-is-a-plugin-admin-panel-in-wordpress

반응형