Ich habe ein Thema, und ich muss einige bestimmte | Verhaltensteile davon in der functions.php
-Datei überschreiben. Ich weiß, dass die beste Vorgehensweise hier darin besteht, dies bei einem untergeordneten Thema durch Platzieren eines benutzerdefinierten functions.php
zu tun. Dies ist nun ein Teil der Originaldatei:
function mytheme_setup() {
...
add_image_size( 'mytheme-l-thumbs' , 750 , 423 , true);
add_image_size( 'mytheme-m-thumbs' , 555 , 313 , true);
add_image_size( 'mytheme-s-thumbs' , 450 , 254 , true);
add_image_size( 'mytheme-square-thumbs' , 750 , 750 , true);
add_image_size( 'mytheme-nocrop-thumbs' , 750 , 1500 , false);
}
add_action( 'after_setup_theme', 'mytheme_setup' );
Und ich möchte jeden add_image_size
überschreiben, indem ich crop
für mein untergeordnetes Thema auf false setze. Ich habe versucht, die Funktion für das untergeordnete Thema zu kopieren und einzufügen, aber am Ende ist folgender Fehler aufgetreten:
Kann mytheme_setup () (zuvor in /themes/mytheme-child/functions.php:11 deklariert) in /themes/mytheme/functions.php in Zeile 88 nicht erneut deklarieren
Wie kann ich das machen?
Wenn eine Funktion verknüpft ist, ist es einfach, dies in einem untergeordneten Thema zu ändern. Was Sie tun müssen, ist
Entfernen Sie die ursprüngliche Rückruffunktion
Kopieren Sie die Funktion in Ihr untergeordnetes Thema und benennen Sie es um.
Nehmen Sie Ihre Anpassungen nach Bedarf vor
Hängen Sie Ihre Rückruffunktion erneut auf
Sie können Folgendes versuchen:
// Remove the callback function from the hook
remove_action( 'after_setup_theme', 'mytheme_setup' );
// Copy the function, rename and do what you need
function my_new_callback()
{
// Modify what you need
}
// Rehook your custom callback
add_action( 'after_setup_theme', 'my_new_callback' );