programing

워드프레스에서 대기열에 있는 스크립트 목록을 가져오시겠습니까?

stoneblock 2023. 6. 23. 21:41

워드프레스에서 대기열에 있는 스크립트 목록을 가져오시겠습니까?

wp_enqueue_script를 통해 워드프레스에 큐잉된 스크립트 목록을 얻는 방법을 알고 싶습니다.제가 몇 가지 조사를 해서 wp core 자체를 확인했지만, 제가 가장 가까이 접근할 수 있는 것은 다음과 같습니다.

add_options_page('Wp Sysinfo', 'Wp Sysinfo', 'manage_options', 'wp-sysinfo', 'sysinfo_page');

function sysinfo_page(){
    global $wp_scripts;
    print_r($wp_scripts->queue);
}

그러나 프런트 엔드가 아닌 관리 페이지에만 스크립트가 표시됩니다.

참고로, 워드프레스로 시스템 정보를 표시할 플러그인을 만들고 있습니다.이는 사용자가 보고한 문제를 해결하는 데 유용한 정보를 플러그인/테마 작성자에게 제공하기 위한 것입니다.

편집:

즉, 관리자와 프런트엔드 모두에서 모든 스크립트와 스타일을 대기열에 넣고 사용자 지정 관리 페이지에서 볼 수 있는 방법이 필요합니다.

스타일과 스크립트를 위한 Wordpress 전용 액션 후크가 있습니다.모든 스크립트 또는 스타일이 대기열에 들어간 후 다음 후크가 트리거됩니다.

function inspect_scripts() {
    global $wp_scripts;
    print_r($wp_scripts->queue);
}
add_action( 'wp_print_scripts', 'inspect_scripts' );

function inspect_styles() {
    global $wp_styles;
    print_r($wp_styles->queue);
}
add_action( 'wp_print_styles', 'inspect_styles' );

내가 했을 때<?php global $wp_scripts; var_dump($wp_scripts->queue); ?>표준 2014 Wordpress 테마의 index.php 페이지에서 대기 중인 비관리 스크립트를 보여주었습니다.$wp_scripts 변수 자체에 대해 var_dump를 수행하면 많은 스크립트를 얻을 수 있습니다. 테마의 모든 스크립트 또는 유사한 것으로 추측됩니다.

따라서 사이트 관리자에게만 이 정보를 표시하는 경우 페이지 하단과 같이 이 정보를 반향하는 것만으로도 문제가 없습니다.저는 메모리 프로파일링 플러그인을 한 번 사용한 적이 있습니다(다양한 플러그인에서 사용하는 로드 시간/메모리 로드를 보여줍니다). 페이지 하단에 정보를 입력해 놓았습니다. 꽤 유용했습니다.

그러나 설명에 따르면 대기 중인 스크립트만 표시하는 경우 프론트 엔드의 관리 스크립트인 wp-admin 영역에서 더 많은 정보를 얻을 수 있습니다.

언급URL : https://stackoverflow.com/questions/15169218/get-the-list-of-enqueued-scripts-in-wordpress