plugin_dir_path()

Définition : plugin_dir_path() renvoie le chemin du répertoire contenant un fichier PHP fourni, avec séparateur final. Elle sert à accéder aux fichiers locaux d’une extension WordPress sans construire manuellement des chemins absolus fragiles.

Terminologie

Terme officiel : plugin_dir_path()

Autres appellations : Chemin du dossier du plugin

À quoi cela sert

Elle aide à inclure des classes ou fichiers de configuration depuis le répertoire principal du plugin. Le chemin retourné désigne le système de fichiers du serveur et non une adresse accessible au navigateur.

Comment cela fonctionne

La fonction calcule essentiellement le répertoire de l’argument puis ajoute le séparateur approprié. Si __FILE__ est fourni depuis un sous-dossier, elle renvoie le chemin de ce sous-dossier et pas automatiquement celui du plugin.

Dans quel contexte l’utiliser

À utiliser dans le fichier principal pour construire une constante de répertoire racine, puis inclure des fichiers internes dont on maîtrise l’emplacement.

Exemple concret

Un plugin organisé en plusieurs fichiers veut inclure son fichier de fonctions sans dépendre du répertoire de travail courant.

Exemple de code commenté

<?php
// Fichier principal /plugins/atoolpha-demo/atoolpha-demo.php
$atoolpha_root = plugin_dir_path( __FILE__ );
$atoolpha_file = $atoolpha_root . 'includes/functions.php';

if ( is_readable( $atoolpha_file ) ) {
    require_once $atoolpha_file;
}
// Prérequis : includes/functions.php appartient au plugin.

Explication pas à pas de l’exemple

Le chemin racine est calculé à partir du fichier principal. On lui ajoute un chemin relatif fixe. is_readable() permet ici de ne pas déclencher une erreur fatale si le fichier manque ; l’architecture finale doit néanmoins traiter ce défaut comme une anomalie de distribution.

Résultat attendu

Si includes/functions.php est présent, il est chargé une seule fois pendant l’exécution de la requête.

Précautions et limites

Ne jamais joindre directement une entrée utilisateur non validée à un chemin require. Cette fonction ne vérifie pas, à elle seule, que le répertoire obtenu est celui de la racine d’une extension.

À ne pas confondre

Chemin système pour include/require : plugin_dir_path(). URL destinée aux navigateurs : plugin_dir_url() ou plugins_url().

Termes associés

  • plugin_dir_url()
  • plugins_url()

Références officielles

Bouton retour en haut de la page