web-dev-qa-db-fra.com

Vérifier si un script/style a été mis en file d'attente/enregistré

Est-il possible de tester si un script ou un style a été enregistré en utilisant wp_register_script/_style ou wp_enqueue_script/_style? Toutes les fonctions ne retournent pas de valeur et je suis complètement désemparé.

J'en ai besoin pour basculer entre différentes fonctions en fonction des bibliothèques de styles-styles et des scripts que je propose.

Je vous remercie!

31
kaiser

Il existe une fonction appelée wp_script_is( $handle, $list ) . $list peut être l'un des suivants:

  • 'registered' - a été enregistré via wp_register_script()
  • 'queue' - a été mis en file d'attente via wp_enqueue_script()
  • 'done' - a été imprimé
  • 'to_do' - sera imprimé

Idem pour tout cela pour wp_style_is() .

49
Annika Backstrom

Vérifiez $GLOBALS['wp_scripts']->registered pour les scripts.

Exemple

function is_enqueued_script( $script )
{
    return isset( $GLOBALS['wp_scripts']->registered[ $script ] );
}

print (int) is_enqueued_script( 'l10n' );

$GLOBALS['wp_styles']->registered fonctionne de la même manière.

11
fuxia