Personnaliser un site WordPress sans risquer de tout casser est un défi que rencontrent tôt ou tard tous les utilisateurs. Chaque mise à jour d’un thème peut effacer des heures de travail si les modifications ont été faites directement dans ses fichiers. C’est pour éviter ce genre de mésaventure qu’existe le thème enfant. Il agit comme une couche protectrice, capable d’hériter du thème principal tout en conservant vos ajustements. Dans cet article, nous allons découvrir comment créer un thème enfant WordPress afin de modifier votre site en toute sécurité.
Pourquoi créer un thème enfant ?
Utiliser un thème enfant WordPress, c’est une véritable mesure de sécurité pour toutes vos personnalisations. Lorsqu’un thème parent est mis à jour, toutes les modifications effectuées directement dans ses fichiers sont écrasées sans avertissement. Un thème enfant agit comme une couche intermédiaire qui protège votre travail. Il hérite du design, des fonctions et de la structure du thème principal, tout en vous permettant d’ajouter vos propres fichiers CSS, PHP ou JavaScript sans toucher au cœur du thème.
Cette méthode permet une grande liberté de maintenance. Vous pouvez tester une nouvelle fonction, un style ou un script sans risquer de rendre votre site instable. En cas d’erreur, il suffit de supprimer ou de corriger le fichier concerné dans le thème enfant. Cela rend les phases de test et d’évolution beaucoup plus sûres sur les sites en production.
Si vous cherchez un thème rapide pour votre futur site, consultez aussi notre guide des meilleurs thèmes WordPress pour la vitesse.
Créer un thème enfant sur WordPress
Prenons l’exemple du thème Astra. Pour commencer, ouvrez le dossier wp-content/themes/ sur votre installation WordPress et créez un nouveau dossier que vous nommerez astra-child. Ce dossier constituera votre thème enfant.
Créer le fichier style.css du thème enfant
Le premier fichier à créer est style.css. Il permet à WordPress d’identifier le thème et de savoir de quel parent il dépend. Voici le contenu minimal à y insérer :
/*
Theme Name: Astra Enfant
Template: astra
Version: 1.0.0
Author: SEO Lab
*/
Le champ Template doit correspondre exactement au nom du dossier du thème parent. C’est ce lien qui permet à WordPress de faire hériter le style et la structure du thème d’origine.
Créer le fichier fonctions.php du thème enfant
Ensuite, ajoutez un fichier functions.php dans le même dossier. Ce fichier est indispensable pour charger correctement la feuille de style du parent avant celle de l’enfant. Voici le code minimal à y placer :
<?php
define( 'CHILD_THEME_ASTRA_ENFANT_VERSION', '1.0.0' );
function child_enqueue_styles() {
wp_enqueue_style(
'astra-enfant-style',
get_stylesheet_directory_uri() . '/style.css',
array( 'astra-theme-css' ),
CHILD_THEME_ASTRA_ENFANT_VERSION,
'all'
);
}
add_action( 'wp_enqueue_scripts', 'child_enqueue_styles', 15 );
Ce script indique à WordPress de charger la feuille de style d’Astra avant celle du thème enfant afin que les styles personnalisés du thème enfant s’appliquent après ceux du parent.
Une fois ces deux fichiers enregistrés, le thème Astra Enfant apparaîtra dans votre tableau de bord WordPress, prêt à être activé et personnalisé sans risque pour les fichiers du thème d’origine.
Activer et tester votre thème enfant
Une fois votre thème enfant créé, il ne reste plus qu’à l’activer pour vérifier que tout fonctionne correctement, s’assurer que les fichiers sont bien reconnus par WordPress et que la relation avec le thème parent est établie.
Activation du thème dans l’administration
Connectez-vous à votre tableau de bord WordPress, puis rendez-vous dans le menu Apparence → Thèmes. Vous verrez apparaître votre nouveau thème dans la liste avec son nom et sa capture d’écran (si vous en avez ajouté une). Cliquez sur Activer pour que WordPress l’utilise à la place du thème parent.

Une fois activé, le thème enfant hérite de la mise en page, des couleurs et des fonctionnalités du parent. Si le site s’affiche normalement, c’est que la configuration est correcte et que la feuille de style du parent est bien chargée avant celle de l’enfant.
Vérifier les dépendances
Le thème enfant repose entièrement sur le thème parent. Si ce dernier est désinstallé ou renommé, le site ne pourra plus s’afficher correctement. C’est pourquoi il est recommandé de ne jamais supprimer ni déplacer le thème parent.
Avant toute mise à jour majeure du parent, il est également prudent de faire une copie de sécurité de son dossier dans wp-content/themes/ pour restaurer rapidement les fichiers en cas de changement introduit par l’éditeur du thème.
Personnaliser votre nouveau thème enfant
Une fois le thème enfant installé et activé, il devient votre espace de travail pour toutes les modifications. C’est ici que vous pouvez ajuster le design, modifier la structure ou ajouter de nouvelles fonctionnalités sans jamais toucher au code du thème parent.
Ajouter du CSS personnalisé
Le moyen le plus simple de commencer consiste à ajouter vos propres règles CSS dans le fichier style.css du thème enfant que vous avez déjà créé. Ce fichier est lu après celui du parent, ce qui permet de surcharger les styles existants. Par exemple, pour changer la taille de tous les titres H1, il suffit d’ajouter la ligne suivante :
h1 {
font-size: 28px;
}
Chaque règle placée dans ce fichier viendra compléter ou remplacer celles du thème d’origine. C’est la méthode idéale pour ajuster les marges, les couleurs ou la typographie sans risque.
Surcharger un fichier PHP
Le thème enfant permet également de modifier la structure du site en copiant certains fichiers PHP du parent. Pour cela, il suffit de copier le fichier souhaité (par exemple header.php pour l’en-tête) vers le dossier du thème enfant. WordPress utilisera alors la version présente dans l’enfant, en ignorant celle du parent. Vous pouvez alors y apporter vos ajustements en toute sécurité.
La structure doit être la même que celle du thème parent, si le fichier est à la racine vous devez le mettre à la racine mais si le fichier concerné est dans un sous-dossier, vous devez d’abord créer le dossier dans le thème enfant et placer le fichier dedans.
Pour les thèmes FSE (Full Site Editing)
Les thèmes récents comme Twenty Twenty-Five fonctionnent différemment des thèmes WordPress classiques. Ils utilisent le système Full Site Editing (FSE) qui repose sur des blocs et un fichier de configuration central theme.json. Dans ce cas, le fonctionnement d’un thème enfant est simplifié pour charger les styles, car WordPress gère automatiquement l’héritage entre le parent et l’enfant.
Pour créer un thème enfant FSE, il suffit donc de deux fichiers :
- un style.css contenant les informations d’identification du thème ;
- un theme.json pour définir les réglages, couleurs et styles globaux.
Voici un exemple de style.css :
/*
Theme Name: Twenty Twenty-Five Enfant
Template: twentytwentyfive
Version: 1.0.0
Author: SEO Lab
*/
Et un exemple de theme.json :
{
"version": 2,
"title": "Twenty Twenty-Five Enfant",
"styles": {
"color": {
"background": "#ffffff",
"text": "#222222"
},
"typography": {
"fontFamily": "Inter, sans-serif",
"fontSize": "20px",
"lineHeight": "1.6"
}
}
}
Cette nouvelle approche rend la personnalisation beaucoup plus simple et propre. Les thèmes FSE séparent clairement le contenu, la structure et le style, ce qui permet de créer des thèmes enfants légers et compatibles avec les futurs changements de WordPress.
Le thème enfant sécurise vos personnalisations
Créer un thème enfant est l’une des pratiques les plus sûres pour personnaliser un site WordPress. C’est la garantie de pouvoir modifier, tester et faire évoluer son design sans jamais compromettre la stabilité du site. En séparant le code du thème parent et vos propres ajustements, vous conservez un contrôle total sur chaque élément tout en restant libre de mettre à jour le thème d’origine à tout moment.
Un thème enfant apporte d’abord la sécurité en protégeant vos fichiers personnalisés contre les mises à jour du parent. Il permet également de garder la maîtrise sur les modifications apportées, en ciblant uniquement les éléments que vous souhaitez ajuster et favorise l’évolutivité en vous permettant de faire évoluer votre site au fil du temps.