Thème Enfant WordPress : Quand et comment faut-il en créer ?
Un thème enfant WordPress permet de personnaliser un thème existant sans modifier directement les fichiers du thème parent. C’est particulièrement utile lorsque vous souhaitez ajouter du CSS, modifier des fichiers PHP, personnaliser certains templates ou ajouter des fonctionnalités tout en conservant la possibilité de mettre à jour le thème parent. Les modifications réalisées dans le thème enfant restent alors séparées du code original du thème.
Mais faut-il créer un thème enfant WordPress dès que l’on souhaite modifier son site ? Non. Selon le type de personnalisation envisagée, le personnalisateur WordPress, l’éditeur de site, theme.json, le CSS additionnel ou un plugin peuvent être plus adaptés.
Voici donc quand créer un thème enfant WordPress, comment le faire correctement et surtout quelles modifications lui confier.
Qu’est-ce qu’un thème enfant WordPress ?
Un thème enfant, ou child theme, est un thème qui dépend d’un autre thème appelé thème parent.
Le thème parent contient la conception et les fonctionnalités principales du site. Le thème enfant vient ensuite apporter des personnalisations sans nécessiter de modifier directement les fichiers originaux du thème.
Imaginez que vous utilisez un thème WordPress appelé mon-theme. Vous pourriez créer à côté un thème nommé mon-theme-child.
Le thème enfant peut alors contenir uniquement les modifications dont vous avez besoin.
L’intérêt principal est simple : les fichiers du thème parent peuvent être mis à jour sans écraser les personnalisations placées dans le thème enfant. WordPress présente d’ailleurs les thèmes enfants comme une méthode permettant de conserver les modifications tout en continuant à recevoir les mises à jour du thème parent.
Pourquoi créer un thème enfant WordPress ?
La principale raison de créer un thème enfant est de séparer le code original du thème des modifications réalisées pour votre propre site.
Supposons que vous modifiez directement le fichier header.php de votre thème. Quelques semaines plus tard, le développeur publie une nouvelle version du thème et vous l’installez.
Le fichier modifié peut alors être remplacé par la nouvelle version.
Votre personnalisation disparaît.
Avec un thème enfant, vous pouvez placer votre propre version du fichier dans le thème enfant. WordPress utilisera alors la version du thème enfant lorsque le système de templates le permet.
Le thème enfant permet donc notamment de :
- personnaliser le design avec du CSS ;
- modifier certains templates PHP ;
- ajouter du code dans
functions.php; - créer ou modifier certains templates ;
- ajouter des fichiers spécifiques ;
- conserver les personnalisations lors des mises à jour du thème parent.
C’est particulièrement intéressant lorsqu’un site doit être personnalisé au-delà des options proposées par le thème.
Quand faut-il créer un thème enfant WordPress ?
La question n’est pas seulement « comment créer un thème enfant WordPress ? », mais surtout « ai-je réellement besoin d’un thème enfant ? »
Un thème enfant devient pertinent lorsque vous allez modifier le code du thème.
Par exemple, si vous souhaitez modifier la structure d’un fichier single.php, personnaliser header.php, ajouter des fonctions PHP spécifiques ou surcharger certains templates, le thème enfant constitue une solution adaptée.
Il est également pertinent lorsque vous prévoyez plusieurs personnalisations et que vous voulez maintenir proprement ces modifications dans le temps.
En revanche, créer un thème enfant uniquement pour modifier une couleur n’est pas forcément nécessaire.
Quand un thème enfant WordPress est-il inutile ?
Il est fréquent de créer un thème enfant alors que la personnalisation souhaitée peut être réalisée beaucoup plus simplement.
Si votre thème propose des réglages pour modifier le logo, les couleurs, les polices ou certains éléments de mise en page, utilisez d’abord ces fonctionnalités.
De la même manière, une petite modification CSS peut parfois être ajoutée via Apparence → Personnaliser → CSS additionnel, selon le thème et la configuration WordPress.
Avec les thèmes à blocs modernes, l’éditeur de site et theme.json permettent également de gérer une grande partie des personnalisations visuelles sans créer systématiquement un thème enfant. La documentation officielle de WordPress précise notamment que, pour les block themes, la gestion des styles passe largement par theme.json.
Enfin, lorsqu’il s’agit d’ajouter une fonctionnalité indépendante du design du thème, un plugin est souvent plus approprié.
La règle pratique est donc la suivante :
Modification purement visuelle → options du thème, éditeur de site ou CSS additionnel.
Modification du code du thème → thème enfant.
Nouvelle fonctionnalité indépendante du thème → plugin.
Thème parent et thème enfant : comment ça fonctionne ?
Le thème enfant ne remplace pas complètement le thème parent.
Il s’appuie sur lui.
Imaginez une structure comme celle-ci :
WordPress
└── wp-content
└── themes
├── mon-theme
└── mon-theme-child
mon-theme est le thème parent.
mon-theme-child est le thème enfant.
Le thème enfant peut contenir uniquement quelques fichiers. Pour les éléments qu’il ne possède pas, WordPress peut continuer à utiliser ceux du thème parent.
Cette logique permet de personnaliser uniquement les parties nécessaires.
Par exemple, si le thème parent contient single.php et que vous créez votre propre single.php dans le thème enfant, WordPress utilise la version du thème enfant dans les situations correspondantes. C’est l’un des principes fondamentaux de la hiérarchie des templates WordPress.
Comment créer un thème enfant WordPress ?
La création manuelle d’un thème enfant est relativement simple.
Vous aurez généralement besoin d’un accès aux fichiers de votre site via FTP, SFTP, le gestionnaire de fichiers de votre hébergeur ou un environnement local.
Étape 1 : identifier le thème parent
Commencez par identifier le thème que vous utilisez.
Vous pouvez le faire depuis Apparence → Thèmes dans l’administration WordPress.
Vous devez surtout connaître le nom du dossier du thème parent, car cette information sera utilisée pour relier le thème enfant à son parent.
Par exemple, si le thème se trouve ici :
/wp-content/themes/twentytwentyfour/
le nom du dossier parent est :
twentytwentyfour
Cette valeur doit être utilisée exactement dans la déclaration du thème enfant. WordPress précise que le champ Template doit correspondre au nom du dossier du thème parent.
Étape 2 : créer le dossier du thème enfant
Dans :
/wp-content/themes/
créez un nouveau dossier.
Par exemple :
twentytwentyfour-child
Le nom peut être différent, mais utiliser le suffixe -child permet de comprendre immédiatement qu’il s’agit d’un thème enfant.
Étape 3 : créer le fichier style.css
Dans le nouveau dossier, créez :
style.css
Ce fichier doit contenir l’en-tête permettant à WordPress d’identifier le thème enfant.
Par exemple :
/*
Theme Name: Twenty Twenty-Four Child
Theme URI: https://example.com/
Description: Thème enfant de Twenty Twenty-Four
Author: Votre nom
Template: twentytwentyfour
Version: 1.0
*/
La ligne essentielle est :
Template: twentytwentyfour
Elle doit correspondre exactement au nom du dossier du thème parent.
Le fichier style.css joue donc à la fois un rôle d’identification du thème et, selon la configuration du thème, peut contenir les règles CSS de personnalisation.
Étape 4 : créer functions.php
Vous pouvez ensuite créer :
functions.php
Il servira notamment à ajouter vos fonctions PHP et à charger les fichiers CSS ou JavaScript nécessaires.
Une erreur fréquente consiste à copier intégralement le functions.php du thème parent dans le thème enfant.
Il ne faut pas faire cela.
Le functions.php du thème enfant ne remplace pas celui du parent. WordPress charge les deux fichiers, avec celui du thème enfant chargé avant celui du parent.
Vous devez donc uniquement y placer votre propre code.
Par exemple :
<?php
function mon_theme_child_scripts() {
wp_enqueue_style(
'mon-theme-child',
get_stylesheet_uri()
);
}
add_action('wp_enqueue_scripts', 'mon_theme_child_scripts');
La méthode exacte pour charger les styles dépend cependant du thème parent. Certains thèmes chargent déjà correctement la feuille de style du thème enfant, tandis que d’autres nécessitent une configuration spécifique. WordPress recommande donc de vérifier comment le thème parent gère ses feuilles de style.
Étape 5 : installer et activer le thème enfant
Une fois les fichiers créés, retournez dans :
Apparence → Thèmes
Votre thème enfant devrait apparaître dans la liste.
Vous pouvez alors l’activer.
Si tout est correctement configuré, le site devrait conserver l’apparence du thème parent, puisque le thème enfant hérite de ses fichiers et fonctionnalités.
La documentation officielle de WordPress recommande également la possibilité de compresser le dossier du thème enfant en ZIP et de l’installer depuis l’administration WordPress.
Comment personnaliser un thème enfant WordPress ?
Une fois le thème enfant activé, vous pouvez commencer vos personnalisations.
Ajouter du CSS personnalisé
Vous pouvez placer vos règles CSS dans style.css.
Par exemple :
.site-title {
font-size: 32px;
font-weight: 700;
}
Vous pouvez ainsi modifier l’apparence de certains éléments sans toucher au fichier CSS original du thème parent.
Modifier un template PHP
Supposons que vous souhaitiez modifier le fichier :
single.php
Vous pouvez copier le fichier dans votre thème enfant :
mon-theme-child/single.php
Puis modifier cette copie.
WordPress utilisera alors le fichier correspondant du thème enfant lorsqu’il doit charger ce template. Cette possibilité constitue l’un des principaux intérêts des thèmes enfants.
Cette technique peut également s’appliquer à d’autres templates et, selon l’architecture du thème, aux template parts et patterns.
Ajouter du code dans functions.php
Le fichier functions.php du thème enfant peut servir à ajouter des fonctions, des hooks, des filtres ou d’autres personnalisations.
Par exemple :
<?php
function mon_theme_child_customisation() {
// Votre code personnalisé
}
add_action('after_setup_theme', 'mon_theme_child_customisation');
L’avantage est que votre code reste séparé du fichier functions.php du thème parent.
WordPress précise toutefois que le functions.php enfant n’écrase pas celui du parent : les deux sont chargés. Il faut donc éviter de recopier les fonctions du parent, notamment pour ne pas provoquer de conflits de noms.
Comment créer un thème enfant WordPress sans coder ?
Si vous ne souhaitez pas créer manuellement les fichiers, certains outils peuvent automatiser la génération d’un thème enfant.
Des générateurs permettent notamment d’indiquer le thème parent puis de produire une structure de thème enfant prête à installer.
WordPress propose également une approche intégrée à l’écosystème des thèmes à blocs avec le plugin Create Block Theme, qui peut notamment générer un thème enfant depuis l’éditeur de site.
Cette solution peut être intéressante pour les utilisateurs qui travaillent principalement avec l’éditeur de site et les block themes.
Cependant, générer automatiquement le thème enfant ne dispense pas de comprendre son fonctionnement. Une mauvaise modification de functions.php ou d’un template PHP peut toujours provoquer une erreur sur le site.
Faut-il créer un thème enfant avec Elementor, Divi ou WooCommerce ?
La réponse dépend principalement de la personnalisation envisagée.
Avec un constructeur de pages comme Elementor ou Divi, certaines modifications peuvent être réalisées directement dans l’interface sans toucher au code du thème.
Si vous devez cependant modifier le fonctionnement du thème, ses fichiers PHP, ses templates ou ajouter du code spécifique, un thème enfant peut devenir pertinent.
Pour WooCommerce, la situation est similaire. Si vous devez personnaliser certains templates WooCommerce dans votre thème, il faut notamment tenir compte du système de templates et de ses mécanismes de surcharge.
Le thème enfant est donc particulièrement utile lorsque la personnalisation dépasse ce que les interfaces du thème et des plugins permettent de faire.
Thème enfant WordPress : avantages et inconvénients
Le principal avantage est la séparation entre le thème original et vos personnalisations.
Vous pouvez mettre à jour le thème parent sans devoir réappliquer manuellement toutes vos modifications. Cela facilite également la maintenance et rend le travail plus propre pour un développeur.
Mais un thème enfant introduit aussi une dépendance supplémentaire : il dépend du thème parent.
Si vous changez complètement de thème, votre thème enfant ne pourra généralement pas être réutilisé tel quel.
Il faut également maintenir correctement les personnalisations réalisées dans le thème enfant et vérifier leur compatibilité lorsque le thème parent évolue.
WordPress souligne d’ailleurs que lorsque les personnalisations deviennent très importantes, créer son propre thème peut parfois être plus pertinent qu’accumuler de nombreuses modifications dans un thème enfant.
Thème enfant ou modification directe du thème : que choisir ?
Modifier directement le thème parent peut sembler plus rapide.
Vous ouvrez un fichier, vous faites votre modification et le résultat apparaît immédiatement.
Le problème apparaît lors de la prochaine mise à jour.
Une mise à jour peut remplacer les fichiers que vous avez modifiés et supprimer vos personnalisations.
Le thème enfant permet précisément d’éviter cette situation.
La bonne approche consiste donc à ne pas considérer le thème enfant comme une obligation pour chaque site WordPress, mais comme une couche de personnalisation destinée à protéger et organiser les modifications apportées au thème parent.
Les erreurs à éviter avec un thème enfant WordPress
La première erreur consiste à modifier directement les fichiers du thème parent alors qu’une mise à jour est prévue.
La deuxième consiste à copier intégralement le functions.php du parent dans l’enfant. Les deux fichiers sont chargés par WordPress : cette copie peut provoquer des fonctions déclarées plusieurs fois ou d’autres conflits.
Une autre erreur fréquente est de renseigner incorrectement la valeur :
Template:
Elle doit correspondre exactement au nom du dossier du thème parent.
Enfin, il faut éviter de créer un thème enfant pour une modification qui pourrait être réalisée simplement avec les outils natifs de WordPress.
FAQ sur le thème enfant WordPress
Un thème enfant est-il obligatoire sur WordPress ?
Non. Vous n’avez pas besoin d’un thème enfant pour utiliser WordPress ou pour modifier certains paramètres visuels. Il devient surtout utile lorsque vous souhaitez apporter des modifications au code du thème parent.
Est-il possible de mettre à jour le thème parent avec un thème enfant ?
Oui. C’est même l’un des principaux intérêts du thème enfant : séparer les personnalisations des fichiers du thème parent afin qu’elles ne soient pas normalement supprimées lors des mises à jour.
Où se trouve un thème enfant WordPress ?
Il se trouve généralement dans :
/wp-content/themes/
au même niveau que le thème parent.
Le thème enfant remplace-t-il le thème parent ?
Non. Il dépend du thème parent et hérite de ses fonctionnalités. Il peut toutefois fournir certains fichiers ou personnalisations qui prennent priorité sur ceux du parent.
Faut-il toujours créer un fichier functions.php ?
Il est courant d’en créer un pour les personnalisations PHP, mais le fonctionnement précis d’un thème enfant dépend de ce que vous souhaitez personnaliser. Le fichier style.css constitue quant à lui le fichier indispensable permettant de déclarer le thème enfant.
Peut-on supprimer le thème parent après avoir créé un thème enfant ?
Non, pas si le thème enfant en dépend. Le thème enfant utilise les fichiers et fonctionnalités du parent : supprimer celui-ci peut donc rendre le thème enfant inutilisable.
Conclusion
Le thème enfant WordPress est avant tout une solution de personnalisation et de maintenance. Il permet de modifier un thème existant sans transformer directement ses fichiers originaux et sans risquer de perdre ses modifications lors d’une mise à jour du thème parent.
Mais créer un thème enfant WordPress n’est pas systématiquement nécessaire.
Pour une simple modification de couleur, de police ou de mise en page, les fonctionnalités du thème, l’éditeur de site, theme.json ou le CSS additionnel peuvent suffire. En revanche, dès que vous devez modifier des templates PHP, ajouter des fonctions ou personnaliser profondément le comportement d’un thème, le thème enfant devient beaucoup plus pertinent.
Si votre site WordPress nécessite des personnalisations avancées, une refonte ou le développement d’un thème enfant adapté à votre projet, vous pouvez découvrir mes services.
Un projet web
à concrétiser ?
Vous avez un projet, une idée ou un besoin spécifique ? Décrivez-moi votre projet et recevez une estimation adaptée à vos besoins.
Demander un devis