2017-10-30 2 views
0

Ich habe ein Plugin in WordPress und ich versuche, eine Palette von Optionen über jQuery und mit der Funktion ".load()" zu laden.Wordpress - do_settings_fields undefined Funktion

Dazu habe ich mein Panel in eine separate ".php" Datei ausgelagert und in der ersten Zeile habe ich "wp-load.php" genannt, um die WordPress Funktionen zu benutzen.

Das Problem ist, dass es die Funktionen "settings_fields" und "do_settings_fields" nicht erkennt, aber offensichtlich erkennt es die Übersetzungsfunktionen, zum Beispiel "__" und "_e".

Ich weiß nicht, was es sein kann und ich weiß nicht, ob es eine andere Möglichkeit geben könnte, externe Inhalte mit jquery zu laden.

Fatal error: Call to undefined function do_settings_fields() in C:\xampp\htdocs\webs\test\wp-content\plugins\homeandcity\assets\php\new_settings.php on line 19 

Auf diese Weise bin ich die Wordpress-Bibliothek:

<?php 
    require_once(explode("wp-content" , __FILE__)[0] . "wp-load.php"); 
?> 

Dies ist der Teil meines Codes in jQuery ist, dass die genannten Inhalte lädt:

if (data.status == true){ 
     $('#settings').load(''+pluginUrl+'./assets/php/settings.php'); 
    } 

Antwort

0

Es bedeutet einfach, dass die Datei, die diese Funktion enthält, wird nicht in den WP-Ladeprozess in der Warteschlange eingereiht. Versuchen Sie es manuell einzubeziehen.

require_once(dirname(__FILE__).'/wp-load.php'); 
require_once(dirname(__FILE__).'/wp-admin/includes/template.php');