Ich habe ein übergeordnetes Thema, das diese Konstante in function.php:
deklariert.
define("THEME_DIR", get_template_directory());
define("THEME_DIR_URI", get_template_directory_uri());
define("THEME_NAME", "BARNELLI");
define("THEME_STYLES", THEME_DIR_URI . "/css");
define("THEME_INCLUDES", THEME_DIR . "/includes");
define("THEME_POST_TYPES", THEME_DIR . "/includes/post-types");
define("THEME_INCLUDES_URI", THEME_DIR_URI . "/includes");
define("THEME_FONTS", THEME_DIR_URI . "/font-awesome");
ich muss einige Dateien im Verzeichnis includes
ändern und die Verzeichnisstruktur (einschließlich Dateien) kopieren.
Wie ich in der Codex-Dokumentation gelesen habe, wird function.php
im untergeordneten Design vor der gleichen Datei im übergeordneten Design geladen und nur die Dateien im Stammverzeichnis des übergeordneten Designs können im untergeordneten Design überschrieben werden.
Wenn ich eine geänderte Konstante im function.php
des Kindes deklariere, wird der function.php
des Elternteils überschrieben, und wenn ich eine enthaltene Datei in das untergeordnete Themenverzeichnis kopiere (und ändere), funktioniert dies nicht.
Was schlagen Sie vor, um dieses Problem zu lösen?
Konstanten können nicht so einfach neu definiert werden.
https://stackoverflow.com/questions/8465155/redefine-constants-in-php
Daher werden die Konstanten von untergeordneten Themen anstelle der Konstanten von übergeordneten Themen verwendet. Es wird zwar eine Warnung angezeigt, dies sollte jedoch kein Problem darstellen, wenn Sie die Warnung deaktivieren.
Sie sollten Konstanten wie diese hinzufügen, wenn Sie keine Warnung wünschen:
if ( !defined('CONSTANT') )
define('CONSTANT', 'constant_value');
BEARBEITEN:
Einfache Antwort, füge Konstanten in den functions.php
deines Child-Themas ein und er wird verwendet, wenn du diese Konstanten verwendest.
Umfassende Antwort: Warum haben Sie überhaupt die Mühe, die CONSTANTS zu ändern? CONSTANTS sollten nicht geändert werden. Sie können eigene Konstantensätze für Ihr untergeordnetes Thema erstellen. Wenn ich Sie wäre, würde ich Folgendes in den functions.php
des Child-Themas einfügen und diese neuen Konstanten verwenden, wann immer dies erforderlich ist.
define("CHILD_THEME_DIR", get_stylesheet_directory());
define("CHILD_THEME_DIR_URI", get_stylesheet_directory_uri());
define("CHILD_THEME_NAME", "BARNELLI-CHILD");
define("CHILD_THEME_STYLES", CHILD_THEME_DIR_URI . "/css");
define("CHILD_THEME_INCLUDES", CHILD_THEME_DIR . "/includes");
define("CHILD_THEME_POST_TYPES", CHILD_THEME_DIR . "/includes/post-types");
define("CHILD_THEME_INCLUDES_URI", CHILD_THEME_DIR_URI . "/includes");
define("CHILD_THEME_FONTS", CHILD_THEME_DIR_URI . "/font-awesome");
Da das übergeordnete Thema bereits die Konstanten deklariert, gilt die Antwort von @ toscho nicht für Ihren Fall.