web-dev-qa-db-fra.com

Comment annuler `wp_print_scripts`?

Je souhaite charger tous les scripts dans $wp_scripts avec ma propre fonction JS après l'événement window.onload. Existe-t-il un moyen simple d'empêcher wp_print_scripts d'imprimer la liste par défaut de balises <script> afin que je puisse la remplacer par mon propre code?

1
Rafi

Il existe un moyen, mais cela n’est pas recommandé, car il est possible que d’autres scripts en ligne soient associés aux scripts en file d’attente. Vous pouvez accéder à l'action wp_enqueue_scripts et vider le $wp_scripts global comme suit:

add_action( 'wp_enqueue_scripts', 'remove_all_scripts', 1000 );
function remove_all_scripts() {
    global $wp_scripts;
    $wp_scripts->queue = array();
}

Vous pouvez ensuite exécuter une boucle et mettre en file d'attente ce que vous voulez avec.

3
Jack Johansson