Ich habe ein Plugin erstellt, um die Funktion eines Themas zu überschreiben. Da ich lerne, dass die Funktion im Plugin zuerst geladen wird, habe ich aber einen Fehler bekommen
Schwerwiegender Fehler: wooc_extra_register_fields () (zuvor in ****/themes/****/functions.php: 247 deklariert) kann in ***/plugins/custom-plugin/custom-plugin.php in Zeile 89 nicht erneut deklariert werden
Ich bin mir nicht sicher, was ich falsch mache. Stellen Sie außerdem sicher, dass die Funktionen des Themas überschrieben werden müssen, wenn! -Funktion vorhanden ist. Also, was ist der richtige Weg, um ein Thema zu überschreiben Funktion Wrap-In! -Funktion existieren mit einem Plugin?
In wp-settings.php, WordPress first checks for any must-use plugins (plugins in the optional mu-plugins folder) and loads those.
Wenn Sie dann eine Multisite-Installation ausführen, wird nach Plugins gesucht, die im Netzwerk aktiviert sind, und diese werden geladen.
Für Ihre Situation ist es am besten, das Plugin in function_exists
zu packen.
if ( ! function_exists( 'wooc_extra_register_fields' ) ) {
function wooc_extra_register_fields() {
}
}
im übergeordneten Thema, da dies die Funktionen des Themas steckbar macht. Sie können dann ein untergeordnetes Thema erstellen und die Funktion im functions.php
des untergeordneten Themas neu deklarieren.