Comment obtenir le descripteur $ pour tous les scripts en file d'attente?

14

Existe-t-il un moyen d'obtenir le descripteur $ pour chaque script mis en file d'attente?

Existe-t-il un tableau contenant toutes les poignées pour que je puisse le parcourir et faire quelque chose en utilisant chaque $ $?

    
posée trusktr 03.06.2012 - 04:37

2 réponses

22

le $wp_scripts global contient toutes les données de script:

function wpa54064_inspect_scripts() {
    global $wp_scripts;
    foreach( $wp_scripts->queue as $handle ) :
        echo $handle;
    endforeach;
}
add_action( 'wp_print_scripts', 'wpa54064_inspect_scripts' );
    
réponse donnée Milo 03.06.2012 - 05:04
1
  

Existe-t-il un moyen d'obtenir le descripteur $ pour chaque script mis en file d'attente?

Vous pouvez essayer d'inspecter $wp_scripts->queue avec un hook spécifique, mais cela ne vous donnera pas la liste de tous les descripteurs utilisés par WordPress, croyez-le ou non.

Par exemple, vous pouvez accrocher wp_head , qui exécute l'action wp_print_scripts , pour obtenir une liste de $handles pour le thème Twenty Seventeen de WP v4.7.5:

.
function get_enqueued_scripts () {
    $scripts = wp_scripts();
    var_dump( array_keys( $scripts->groups ) );
}

add_action( 'wp_head', 'get_enqueued_scripts' );

Et la liste de $handles de $wp_scripts->groups sera affichée:

À ce stade, si vous comparez ce qui existe dans $wp_scripts->queue , vous ne verrez qu'un sous-ensemble de ceux-ci.

Par conséquent, même wp_print_scripts ne fournira pas la liste complète des descripteurs présentés ci-dessus, si c'est ce que vous recherchez. Et il n’est pas possible de toujours compter sur des dépendances groupées pour les obtenir.

    
réponse donnée Josh Habdas 07.06.2017 - 11:37

Lire d'autres questions sur les étiquettes