verwenden Sie mehrere Dateien in der wordpress-plugin - Call to undefined function add_action()
ich versuche ein plugin schreiben mit mehreren Dateien, ich bin mir sicher, dass ich es Tat, bevor, ohne
ein problem, aber jetzt habe ich das problem in dem Thema.
in der Haupt-plugin-Datei ich habe eine Datei mit name - ydp-includes.php,
innerhalb von ydp-includes.php ich habe alle Dateien, die ich wollte wie dieser:
<?php
include(dirname( __FILE__ ) .'/1.php');
include(dirname( __FILE__ ) .'/2.php');
include(dirname( __FILE__ ) .'/3.php');
include(dirname( __FILE__ ) .'/4.php');
?>
aber ich bin immer: Fatal error: Call to undefined function add_action()
die Dateien beinhaltet, aber für einen Grund kann ich nicht sehen im moment wordpress
nicht sehen, Sie als ein plugin-Paket und jeder wordpress-Funktion-innen ignoriert.
gibt es ein weiteres best-practice Art und Weise zu entwickeln, die mehrere Dateien wordpress-plugin ?
was mache ich falsch ?
Dank
- Es ist besser, eine Klasse zu erstellen mit der man alle Funktionen, wenn möglich, oder mehrere Klassen mit spezifischen Funktionen jeder. ¿Gibt es irgendeinen Grund für die Verwendung enthalten die Dateien mit den enthaltenen Funktionen? Je nach dem Ort, an dem diese Dateien enthalten, WP kann nicht erkennen, Sie als Teil des plugins.
Du musst angemeldet sein, um einen Kommentar abzugeben.
In PHP
include
ist ein Anweisung keine Funktion.So sollte es sein,
oder perfekt zu sein,
Basierend auf der Fehlermeldung, es klingt wie Sie versuchen, Zugriff auf die plugin-Datei direkt, was falsch ist. WordPress verwendet eine front-controller-design-Muster, was bedeutet, dass Sie gehen zu wollen, um Ihre Dateien wie dieses:
Innerhalb der my-plugin-name.php:
Hinzufügen WordPress-admin-Menü-Element, und laden Sie die gewünschten Dateien. Sie werden auch verlangen können, um mehr Dateien innerhalb der Dateien enthalten jetzt, mit Hilfe der Konstante
MY_PLUGIN_PATH
Siehe auch:
add_menu_page
plugin_dir_path()
Verwenden
plugin_dir_path( __FILE__ );
um Dateien von Ihrem plugin. Verwenden Sie code Referenz unten: