web-dev-qa-db-fra.com

WP Chemins dans un plugin - comment inclure

Je travaille sur mon premier WP plug-in, et je ne parviens pas à faire fonctionner un fichier include. Ma structure de répertoire ressemble à ceci:

  • monPlugin
    • des classes
    • des modèles
    • css
    • js
  • myplugin.php

Mon fichier de plugin principal (myplugin.php) inclut/nécessite divers fichiers dans le répertoire classes, et cela fonctionne très bien. Cependant, un des fichiers du répertoire classes est supposé inclure un fichier du répertoire templates. J'ai tout essayé, de plugins_url() à plugin_basename() à plugin_dir_path() mais rien ne semble fonctionner.

Comment cette déclaration devrait-elle chercher à obtenir ce que j'essaie d'accomplir?

1
Paul Srch

Mettez ceci dans le fichier de plugin principal (myplugin.php):

defined( 'MY_PLUGIN_URL' ) || define( 'MY_PLUGIN_URL', plugin_dir_url(__FILE__) );
defined( 'MY_PLUGIN_PATH' ) || define( 'MY_PLUGIN_PATH', plugin_dir_path(__FILE__) );

juste avant tout autre code et utilisez MY_PLUGIN_PATH pour inclure des fichiers, ou MY_PLUGIN_URL pour charger vos ressources.

PAR EXEMPLE:

  • require_once MY_PLUGIN_PATH . 'templates/se.php';
  • wp_enqueue_style( 'my-css', MY_PLUGIN_URL . 'assets/css/style.css' );

Ces constantes peuvent être accessibles à partir de n’importe quel autre fichier, y compris le fichier du chargeur principal du plugin et les fichiers des sous-répertoires. Tant que le plugin est chargé correctement.

J'espère que cela pourra aider.

3
Samuel Elh