Est-ce que quelqu'un connaît un moyen non astucieux d'obtenir le chemin du répertoire du plugin à partir du fichier functions.php d'un thème?
J'ai utilisé plugin_dir_path (FICHIER), mais comme il est appelé dans le fichier functions.php du thème, il renvoie le chemin d'accès à ce fichier. Pas le répertoire des plugins. Je pourrais le manipuler et ajouter le chemin des plugins, mais cela semble presque aussi grave que de coder en dur le chemin entier.
Je l'ai obtenu en utilisant:
require_once( ABSPATH .'/wp-content/plugins/ehu-events/event-widget.php' );
Mais je sais que c'est tellement oldschool et faux et je serais probablement fui de la communauté wordpress pour l'utiliser!
Existe-t-il une fonction wordpress standard que je peux utiliser pour cela?
Peut-être que ce que vous cherchez, c'est:
WP_PLUGIN_DIR // full path, no trailing slash
WP_PLUGIN_URL // full url, no trailing slash
Voir documentation
Je crois que cela peut être plus fiable que de dépendre des constantes.
$url = plugins_url();
$path = parse_url($url);
var_dump($path['path']);
La raison pour laquelle je pense qu’elle pourrait être plus fiable est que la fonction plugins_url
prend en compte les constantes WPMU_PLUGIN_URL
et WP_PLUGIN_URL
et respecte également le filtre plugins_url
.