wp_dequeue_script()
Définition : wp_dequeue_script() retire un script de la file de chargement WordPress lorsque son identifiant est connu. Elle peut éviter d’imprimer une ressource devenue inutile dans un contexte précis.
Comprendre et utiliser
À quoi sert ce terme ?
Elle sert à limiter les ressources superflues et certains conflits front-end, mais doit être utilisée après compréhension des dépendances. Un script retiré peut être indispensable à une autre extension.
Fonctionnement technique
La fonction agit sur une file d’attente de handles déjà enregistrés. Le moment de son appel compte : une extension peut encore remettre le script dans la file après le retrait.
Dans quels contextes l’utiliser ?
Employer uniquement lorsqu’un handle inutile a été identifié par diagnostic, idéalement sur des pages ciblées. Ne pas retirer globalement des scripts du Core pour un simple score de performance.
Cas concret : ATOOLPHA
Une page de démonstration ATOOLPHA utilise son propre script de carte, mais la page de lexique n’en a pas besoin.
Exemple de code commenté
Extrait PHP destiné à un plugin ou à un template WordPress, dans le contexte indiqué ; pas au contenu HTML de l’article.
<?php
add_action( 'wp_enqueue_scripts', function () {
if ( is_page( 'lexique' ) ) {
wp_dequeue_script( 'atoolpha-demo-map' );
}
}, 100 ); // Après l’enqueue habituel de la ressource ciblée.
Décryptage de l’exemple
Le callback intervient avec une priorité tardive. Il demande le retrait d’un handle fictif appartenant à ATOOLPHA, pas d’un script inconnu chargé par un tiers.
Résultat attendu
Sur la page ciblée, le fichier associé n’est plus chargé si rien ne le remet ensuite dans la file et si aucune dépendance ne l’impose.
Exercice pratique et vérification
Dans un plugin test, enregistrer un script puis le retirer sur une page seulement. Contrôler dans l’onglet Réseau sa présence ailleurs.
Précautions et limites
Avant d’enlever une ressource, vérifier les interactions et les dépendances des autres scripts. Un dequeue de Core global peut désactiver une fonctionnalité.
À ne pas confondre
wp_dequeue_script() retire de la file ; wp_deregister_script() retire l’enregistrement de la ressource elle-même.
Diagnostic avancé
Si le script est encore présent, inspecter les priorités de hooks et les ressources qui l’enqueue plus tard ou indirectement via les dépendances.
Choix d’architecture et déploiement
Avant de supprimer un script, dresser sa carte de dépendances et identifier son propriétaire. Une optimisation mesurée sur une page ne doit pas provoquer de rupture sur une autre page ; noter la raison du retrait et prévoir un contrôle après chaque mise à jour.
Contrôle avant intégration
Documenter pourquoi ce handle est retiré, et vérifier après mises à jour des extensions qu’aucune dépendance n’a changé.
Notions associées
- wp_deregister_script()
- wp_script_is()
- wp_enqueue_scripts
