Odpowiedzi:
$wp_scriptsglobalny przechowuje wszystkie dane skryptów:
function wpa54064_inspect_scripts() {
global $wp_scripts;
foreach( $wp_scripts->queue as $handle ) :
echo $handle;
endforeach;
}
add_action( 'wp_print_scripts', 'wpa54064_inspect_scripts' );
,9999jak add_action( 'wp_print_scripts', wpa54064_inspect_scripts', 9999 );, bo inaczej będziesz widząc skrypty których kolejki są opróżniane przez pliku functions.php
Czy istnieje sposób, aby uzyskać uchwyt $ dla każdego skolejkowanego kolejki?
Możesz spróbować sprawdzić $wp_scripts->queuekonkretny haczyk, ale nie da ci to listy wszystkich uchwytów używanych przez WordPress, uwierz lub nie.
Na przykład możesz podłączyć się do wp_headdziałającej wp_print_scriptsakcji i uzyskać listę podstawowego $handlesmotywu Twenty Seventeen w WP v4.7.5:
function get_enqueued_scripts () {
$scripts = wp_scripts();
var_dump( array_keys( $scripts->groups ) );
}
add_action( 'wp_head', 'get_enqueued_scripts' );
A lista $handlesz $wp_scripts->groupswyświetli:
W tym momencie, jeśli chcesz porównać to, co istnieje $wp_scripts->queue, zobaczysz tylko podzbiór powyższego.
Dlatego nawet wp_print_scripts nie dostarczy pełnej listy uchwytów, jak pokazano powyżej, jeśli o to ci chodzi. I nie zawsze można polegać na zgrupowanych zależnościach.
$wp_scripts = wp_scripts();może być lepszy niż bezpośredni dostęp do globalnego, ponieważ zainicjuje się,$wp_scriptsjeśli nie został ustawiony.