plugin_dir_url()
Définition : plugin_dir_url() calcule l’URL du répertoire contenant un fichier de plugin WordPress, avec une barre oblique finale. Elle facilite la création d’adresses vers ses ressources publiques, comme les feuilles de style.
Terminologie
Terme officiel : plugin_dir_url()
Autres appellations : URL du dossier de plugin
À quoi cela sert
Elle permet de générer des URL compatibles avec l’emplacement et l’adresse du site, au lieu d’inscrire en dur wp-content/plugins dans le code. L’URL peut être utilisée pour une image ou passée aux fonctions de chargement des ressources.
Comment cela fonctionne
L’argument est généralement __FILE__ depuis le fichier principal. WordPress exploite les règles d’URL des extensions et les filtres applicables. Depuis un fichier imbriqué, le résultat peut pointer vers le sous-répertoire courant.
Dans quel contexte l’utiliser
À utiliser pour référencer les ressources statiques distribuées avec un plugin. Pour une ressource précise et une API d’enqueue, plugins_url() est également adapté.
Exemple concret
Une extension contient assets/style.css et souhaite charger ce fichier seulement sur son interface publique.
Exemple de code commenté
<?php
// Dans le fichier principal du plugin.
add_action( 'wp_enqueue_scripts', function () {
$url = plugin_dir_url( __FILE__ ) . 'assets/style.css';
wp_enqueue_style(
'atoolpha-demo-style',
$url,
array(),
'1.0.0'
);
} );
// Prérequis : assets/style.css existe.
Explication pas à pas de l’exemple
Le callback attend l’étape de chargement des styles du front. plugin_dir_url() fournit la base de l’URL ; on lui ajoute un chemin relatif fixe. wp_enqueue_style() déclare la ressource à WordPress, qui la placera dans la page suivant son cycle.
Résultat attendu
Le fichier CSS est demandé par le navigateur sur les pages publiques où WordPress imprime les styles chargés.
Précautions et limites
L’URL générée ne prouve pas l’existence du fichier. Ne pas utiliser plugin_dir_url() dans une instruction include ou require, qui attend un chemin disque.
À ne pas confondre
plugin_dir_url() produit une URL ; plugin_dir_path() produit un chemin sur le système de fichiers.
Termes associés
- plugin_dir_path()
- plugins_url()
- wp_enqueue_scripts
