THÈME ENFANT WORDPRESS
Prérequis
- Accès FTP ou SSH au serveur WordPress, ou environnement local (Local, DDEV)
- Thème parent identifié (Astra, GeneratePress, thème custom client)
- Dépôt Git pour versionner le thème enfant
- 30 minutes pour créer la structure et valider l’activation
Modifier directement un thème parent expose vos livraisons à la casse à chaque mise à jour WordPress ou du fournisseur. Les correctifs CSS et hooks PHP disparaissent sans trace ni alerte. Vous allez poser un thème enfant versionné : arborescence claire, conventions de nommage et flux de recette adapté aux projets B2B.
Cadrage : pourquoi un thème enfant
Le thème parent fournit la base (grille, typographie, blocs). Votre livraison agence ajoute l’identité visuelle, des templates métier et des intégrations. Sans thème enfant, ces ajouts vivent dans le parent ou via des plugins fragiles.
Le thème enfant hérite des templates non surchargés et charge vos fichiers en priorité. C’est le pattern recommandé par WordPress pour toute personnalisation durable.
Créer et activer le thème enfant
Créez le dossier wp-content/themes/cosmos-child/. Rédigez style.css avec Theme Name, Template (slug exact du parent) et Version. Ajoutez functions.php pour enqueue des assets avec filemtime en version.
Activez le thème enfant dans Apparence → Thèmes. Vérifiez la page d’accueil et une page interne : un slug Template erroné provoque une erreur fatale.
Organiser hooks, assets et templates
Découpez functions.php : inc/setup.php, inc/enqueue.php, inc/hooks.php. Chaque fichier a une responsabilité pour faciliter la revue en PR.
Pour un template spécifique, copiez depuis le parent vers le même chemin relatif dans l’enfant. WordPress résout l’enfant en premier.
Erreurs fréquentes
Template: mal orthographié dans style.css : le thème enfant n’apparaît pas ou casse le site.
Copier l’intégralité du parent dans l’enfant : dette de maintenance impossible.
CSS chargé sans dépendance au handle du parent : styles mal appliqués.
Oublier de tester la mise à jour du parent en préproduction.
Ce qu’il faut retenir
Thème enfant = bouclier contre les MAJ parent ; tout custom vit dans cosmos-child/, versionné en Git.
Structure plate : style.css, functions.php modulaire, assets/, template-parts/, overrides ciblés.
Recette systématique après activation et avant chaque MAJ parent en staging.
Documentez Template, versions et build pour la passation client et la maintenance longue durée.
FAQ
Oui si le parent sert plusieurs clients ou recevra des MAJ. Si le thème est 100 % sur mesure sans parent tiers, un thème standalone peut suffire.
Les builders stockent souvent le layout en base. Le thème enfant reste pertinent pour CSS global, hooks PHP et templates natifs non gérés par le builder.
Compilez en CI ou en local vers assets/css/main.css. Ne committez pas node_modules ; documentez npm run build dans le README du projet.