J'essaie d'écrire un plug-in WordPress. Dans mon projet, j'ai trois fichiers PHP.
J'ai besoin d'installer la table de données lors de l'activation du plug-in. Dans cet esprit, j'ai écrit du code pour créer une table pour mon plug-in dans le fichier d'installation de données. Mais je ne suis pas capable de créer une table de données en utilisant ce fichier.
Mon code pour inclure le fichier d'installation de données et le fichier de widget dans mon fichier de plug-in est
define ( 'OTHER_FILES_PATH', plugin_dir_path( __FILE__ ) );
require_once( OTHER_FILES_PATH . '/data_installation.php' );
require_once( OTHER_FILES_PATH . '/plugin_widget.php' );
Mon problème est que lorsque je mets mon code d'installation de données dans mon fichier de plug-in, il fonctionne correctement, mais lorsque je le mets dans un fichier séparé (installation de données), je ne parviens pas à créer de tables pour mon plug-in.
S'il vous plaît laissez-moi savoir si je fais une erreur.
Lorsque vous utilisez plugin_dir_path()
comme vous le faites:
plugin_dir_path( __FILE__ );
Cela retourne quelque chose comme:
/var/www//wordpress/wp-content/plugins/your-plugin/
Donc, il ajoute une barre oblique, car comme le dit la documentation:
C'est un wrapper pour
trailingslashit( dirname( $file ) );
.
Donc, supprimez la barre oblique avant le fichier dans vos appels:
require_once plugin_dir_path( __FILE__ ) . 'file.php';