web-dev-qa-db-fra.com

comment modifier functions.php dans un thème enfant

J'utilise wordpress pour mon site. J'utilise un thème appelé esplanade. J'ai créé un dossier de thème enfant et créé un style.css contenant les lignes requises. Le thème de mon enfant fonctionne bien.

J'ai functions.php dans mon thème d'origine. Je souhaite modifier une fonction qui crée une zone d’auteur sous l’article.

J'ai entendu dire que nous pouvons créer une nouvelle fonction dans le thème enfant functions.php, mais que nous ne pouvons pas éditer la fonction existante.

Je ne veux pas éditer dans le fichier funcions.php des dossiers de thèmes principaux. parce que demain si je mets à jour, cela créera un problème.

1
Santhosh Yedidi

Presque toutes les fonctions d’esplanade peuvent être écrasées dans un thème enfant. Prenez la fonction esplanade_admin_header_style() par exemple. Juste avant cette fonction se trouve la ligne suivante du code if ( ! function_exists( 'esplanade_admin_header_style' ) ) :. La partie importante ici est if ( ! function_exists()):. Cela signifie que la fonction qu’elle appelle peut être écrasée dans un thème enfant. C'est toujours une bonne pratique pour les auteurs de thème parent d'ajouter cette fonction s'ils veulent que leur thème soit adapté au thème enfant.

Cela signifie maintenant que vous pouvez copier la fonction function esplanade_admin_header_style() { code in here } entière dans votre thème enfant et modifier le code selon vos besoins. Cette fonction sera alors utilisée à la place de la fonction du thème parent. Il est important ici de garder le même nom pour cette fonction. Donc, votre fonction ressemblera à ceci function esplanade_admin_header_style() { my new code in here }. Une dernière chose à garder à l’esprit: ne copiez pas la partie if ( ! function_exists( 'esplanade_admin_header_style' ) ) : dans votre thème.

3
Pieter Goosen