it-swarm.com.de

Aufruf zu undefiniertem Funktionsproblem

Ich weiß, dass es andere, vielleicht bessere Möglichkeiten gibt, das zu tun, was ich erreichen möchte, aber ich muss diese Lösung verwenden.

Ich habe zwei Stylesheets:

  • style.css - normales Stylesheet
  • style-dynamic.php - dynamisches Stylesheet, das mit dem ersten verknüpft ist

Ich verwende im zweiten einen PHP Code wie:

#body {
    background-color: <?php echo get_option('theme_background'); ?>;
}

Nun geht es darum, dass die style-dynamic.php-DateiknowWordPress nicht funktioniert und der obige Code folgendes ergibt:

Fataler Fehler: Aufruf der undefinierten Funktion get_option() in C:\xampp\htdocs\wordpress\wp-content\themes\mytheme\style-dynamic.php online 12

Ich denke, ich muss wp_load.php laden (nur?) Und das ist schwierig, weil ich nicht sicher bin, wie genau? Ich habe require_once ausprobiert, bin mir aber nicht sicher, ob ich vom Theme-Verzeichnis direkt in das WordPress-Hauptverzeichnis springen kann, in dem sich die wp-load.php-Datei befindet.

Bearbeiten

Na sicher

require_once(ABSPATH . 'wp-load.php');

Gibt einen weiteren Fehler aus:

Verwendung der undefinierten Konstante ABSPATH - angenommener 'ABSPATH'

1
Wordpressor

Mein Gott, ich kämpfte wieder ein paar Tage hintereinander mit etwas und fand eine Lösung, 20 Minuten nachdem ich bei StackExchange nachgefragt hatte. WARUM?

require_once('../../../wp-load.php');
5
Wordpressor

Hoffentlich besser spät als nie; Falls die obige Lösung (von Wordpressor) nicht funktioniert, können Sie wp-load.php wie folgt laden:

// allow us to use core wordpress functions
    $oldURL = dirname(__FILE__);
    $newURL = str_replace(DIRECTORY_SEPARATOR . 'wp-content' . DIRECTORY_SEPARATOR . 'themes' . DIRECTORY_SEPARATOR . 'THEME_NAME' . DIRECTORY_SEPARATOR . 'assets', '', $oldURL);
    include($newURL . DIRECTORY_SEPARATOR . 'wp-load.php');

Stellen Sie sicher, dass THEME_NAME durch den Namen Ihres Themas ersetzt wird.

0
cr0z3r