Vous êtes ici : Accueil | Tutoriels WordPress | Comment créer un thème WordPress enfant afin d’éviter le pire

Comment créer un thème WordPress enfant afin d’éviter le pire

Child Theme Wordpress

Aujourd’hui j’accueille Harold Paris, le fondateur du site Positivr pour vous parler des thèmes WordPress enfants.

Harold gère une agence web sur Orléans et travaille avec WordPress depuis quelques années. Sa passion pour l’entrepreneuriat l’a poussé à lancer plusieurs projets et Positivr est celui qui rencontre le plus de succès.

Comme beaucoup de personnes, au début il ne connaissait pas les thèmes WordPress enfants. Dans cet article, il va partager avec vous une mésaventure qui devrait vous convaincre d’en créer un pour votre site.

Harold, c’est à toi !

Pour en savoir plus sur la personnalisation de thèmes WordPress, découvrez le guide Relooker son Thème. Vous y apprendrez les bases du code pour personnaliser n’importe quel thème WordPress.

Ah ! La joie des thèmes premium WordPress ! Le design qui va bien, les nombreuses zones de widget, l’interface d’administration en béton, les mises à jour inclues, la maintenance, la sécurité et l’accès direct aux développeurs via leurs forums ou une adresse dédiée…

Ce n’est pas moi qui vais vous dire le contraire, et Alex a déjà pu vous présenter certains de mes sites, le choix d’un thème premium pour WordPress comporte de nombreux avantages par rapport à des solutions plus risquées, moins robustes ou tout simplement “vu et revu” sur le web.

Personnellement, ou dans le cadre de nos activités d’agence web, nous avons fait le choix de nous orienter quasi exclusivement sur ce type de solution.

Sauf que voilà, dans la très grande majorité des cas, l’utilisation “pure et dure” d’un thème premium ne suffit pas.

Le client a des demandes particulières, chaque projet est unique, et il est important d’apporter une touche personnelle qui va pouvoir faire transpirer l’identité d’une marque ou permettre de mettre en oeuvre des fonctionnalités que le thème WordPress n’incluait pas à la base.

Dans cette situation, il existe deux approches possibles :

  • prendre une hache et commencer à charcuter son thème ou…
  • prendre le temps de créer un thème enfant WordPress (« child theme WordPress » en anglais) et apporter les modifications sur celui-ci.

Pourquoi créer un thème enfant WordPress ?

Si vous vous y connaissez un peu, vous savez tout comme moi qu’il est particulièrement facile d’entrer dans le code de son thème et de commencer à apporter les modifications voulues directement sur celui-ci…

Bref, c’est facile et cela permet d’être rapidement opérationnel. Sauf que voilà :

Charcuter directement son thème WordPress est une très mauvaise pratique. Faites passer le mot sur Twitter

Et ceci une raison essentielle : vous pouvez dire adieu aux mises à jour !

Un thème Premium est généralement suivi par celui qui vous l’a vendu. Que ce soit pour apporter de nouvelles fonctionnalités, corriger des erreurs de jeunesse, adapter le thème avec les montées de version de WordPress ou bien tout simplement pour combler des failles ou au sein des ressources utilisées par celui-ci, votre thème va évoluer et il y aura des mises à jour !

Si vous n’appliquez pas ces mises à jour, cela présente un risque. Or quand on modifie son thème de manière importante, si il y a bien une chose que l’on fuit : ce sont les mises à jour.

En effet, en cas de mise à jour, il faut refaire toutes les modifications de A à Z…

Voici une petite histoire personnelle qui devrait vous convaincre (je l’espère) :

Il y a un peu plus d’un an et demi, j’utilisais le thème Webly de chez ElegantThemes (aff) pour un de mes sites.

Ce thème utilisait le script PHP timthumb pour manipuler les images et les redimensionner. Or, une très grosse faille de sécurité a été découverte pour timthumb en aout 2011, et euh… Je dois avouer qu’à l’époque, je ne m’intéressais pas vraiment à tout cela par manque de temps.

Bref, j’avais vu la mise à jour disponible pour mon thème dans l’interface WordPress, mais… ne sachant pas de quoi il en retournait, et surtout avec toutes les modifications et adaptations que j’avais réalisé sur celui-ci, j’avais la flemme de le mettre à jour.

Il est arrivé ce qui devait arriver : je me suis fait hacker.

Et bien en plus… Un beau backdoor sur mon site et du jour au lendemain : Pouf ! Plus d’articles, plus de contenus…

Galère. Heureusement, ce n’est pas parce que je ne m’intéressais pas au sujet que je n’avais pas de sauvegardes.

J’ai pu remettre mon site rapidement debout, éliminer le backdoor, remettre tout en ligne et corriger la faille de sécurité sur le thème…

Enfin, quand je dis rapidement… 2 ou 3 jours passés sur le sujet quand même. Il aurait suffit d’une simple mise à jour pour m’épargner ces ennuis. Gloups. Donc voilà, charcuter un thème : c’est maaaaal !

C’est mal, car à un moment ou à un autre, vous ferez l’impasse sur les mises à jour. Celles-ci peuvent être mineures… ou critiques.

A vous de juger si le risque en vaut la chandelle.

Personnellement, je ne le pense pas.

Et cela tombe bien car il existe une alternative : la création d’un thème WordPress enfant !

Un thème enfant, c’est quoi ?

Un thème “enfant” WordPress, c’est un thème qui va reprendre exactement les fonctionnalités, le design et la mise en page d’un thème “parent” et permettre d’apporter des modifications à celui-ci sans s’attaquer à son intégrité.

Le thème “parent” reste complètement d’origine, toutes les modifications sont apportées sur le thème “enfant”. Le principal avantage de cette pratique est de rendre les mises à jour du thème “parent” (la plupart du temps) transparentes pour votre site.

Je dis la plupart du temps, car tout dépend des modifications que vous apportez à votre thème enfant. En termes de design, c’est souvent le cas.

Par contre, si vous apportez des modifications importantes dans les fonctions du thème et que vous chamboulez complètement les modèles de pages… bref, il faudra sans doute passer par une petite phase de debuggage. Mais cela reste exceptionnel.

En tous cas, ce qu’il faut retenir, c’est que si vous vous y connaissez, un thème “enfant” vous permet de modifier radicalement votre thème en appliquant des modifications sur la partie “enfant” sans toucher à aucun moment au code du “parent”.

L’est pas belle la vie ?

Comment créer un thème enfant ?

Si vous n’y connaissez rien coté édition de thème WordPress, je vous conseille de plutôt déléguer cette action à une agence web (ou de lire le guide Relooker son Thème d’Alex).

La création d’un thème enfant n’est pas fondamentalement compliquée en soi, mais il vous faut connaître un minimum ce dans quoi vous allez mettre les doigts.

Avant de démarrer

Si on s’attarde un peu sur la structure de votre site, vous savez que vos thèmes sont situés dans le répertoire suivant : /wp-content/themes/

Dans cet exemple, nous allons identifier le thème parent fictif positionné dans : /wp-content/themes/leparent/ et qui s’appelera “Le Parent”.

Ce thème contient tous les fichiers d’un thème “normal”, c’est à dire au minimum une feuille de style (style.css), les fichiers modèles (index.php, page.php, etc…), le fichier des fonctions (functions.php) et éventuellement d’autres fichiers comme des ressources (images, librairies, etc…).

Etape 1 – Créer le répertoire du thème enfant

La première étape pour créer votre thème enfant est de créer un répertoire pour celui-ci. Avec l’aide d’un client FTP ou directement sur votre serveur si vous l’administrez à la “mano”, vous allez devoir créer un nouveau répertoire qui, dans notre cas, portera le nom : “monthemeenfant”.

Ce répertoire va devoir être créé ici : /wp-content/themes/monthemeenfant/

Une fois le répertoire créé, on passe à l’étape suivante.

Etape 2 – Créer une feuille de style “enfant”

La deuxième étape pour créer votre thème enfant est de générer une feuille de style qui va indiquer que ce nouveau thème est… justement un thème “enfant” de votre thème “parent”.

Voici le code à utiliser pour cette feuille de style :


/*Theme Name: Mon Theme Enfant
Theme URI: http: //example.com/
Description: Thème enfant du thème Le Parent
Author: Votre nom ici
Author URI: http: //example.com/about/
Template: leparent
Version: 0.1.0
*/
En-tête du fichier style.css du thème enfant

Et voilà ! Vous venez de créer avec amour le fichier style.css de premier thème enfant. Mais euh… Qu’avons-nous fait exactement ?

  • Theme Name : Le nom du thème que vous allez créer.
  • Theme URI : L’adresse où l’on peut télécharger celui-ci si vous faites une release.
  • Description : La description du thème.
  • Author : L’auteur du thème… y mettre votre nom.
  • Author URI : L’adresse où l’on va retrouver des infos sur l’auteur.
  • Template : Le thème parent qui va être utilisé. Il faut y mettre le nom du répertoire de celui-ci.
  • Version : Si vous tenez des numéros de version (c’est mieux), c’est par ici que cela se passe.

Note : Pour créer des fichiers sur votre serveur, vous pouvez soit :

  • les créer sur votre ordinateur et les envoyer sur votre serveur à l’aide de votre client FTP
  • les créer directement sur votre serveur à l’aide de votre client FTP puis les éditer avec un éditeur de code.

Etape 3 – Importer le style du thème parent

Auparavant, la bonne pratique consistait à importer le fichier « style.css » du thème parent via le fichier CSS du thème WordPress enfant (grâce à la directive « @import » du langage CSS).

Aujourd’hui une autre solution est recommandée, c’est un peu plus technique mais la Marmite est là pour vous aider. Pour cela vous allez devoir créer un fichier « functions.php ».

À l’intérieur, entrez le code suivant :

<?php
function wpm_enqueue_styles(){
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
add_action( 'wp_enqueue_scripts', 'wpm_enqueue_styles' );
Chargement du fichier style.css du thème parent

Étudions ces lignes de code.

À première vue, nous pouvons voir qu'une fonction `wpm_enqueue_styles()`est déclarée et associée au hook action "wp_enqueue_scripts" (un hook est un moyen de modifier WordPress).

Pour vous en dire un peu plus, ce hook permet de dire à WordPress de charger des styles CSS ou scripts Javascript dans le thème.

Dans notre cas, il s'agit de charger le fichier "style.css" du thème parent.

En effet, charger ce fichier est indispensable sinon le thème enfant ne pourra pas reprendre les styles CSS du parent et donc s'afficher correctement.

L'avantage avec cette méthode est qu'il n'y a rien à modifier. Cela fonctionnera pour n'importe quel thème enfant (vous pouvez néanmoins changer le nom de la fonction "wpm_enqueue_styles()" si le coeur vous en dit).

Sauvegardez le tout pour finaliser la création de votre thème enfant.

Si vous activez maintenant ce nouveau thème, vous pourrez voir que... rien ne change. Génial, non ? ^^

Bref, les réglages sont justes et l’appel du thème “parent” est fonctionnel.

Etape 4 - Adapter le thème enfant

Bien ! C’est maintenant que tous vos talents de développeur et webdesigner vont être mis à rude épreuve... Car vous pouvez maintenant apporter toutes les modifications que vous souhaitez.

Quelles sont les actions que vous aller pouvoir mener ?

Apporter des modifications à la feuille de style

En ajoutant vos modifications à la suite de l’import de la feuille de style parente (dans le fichier "functions.php"), vous allez pouvoir modifier la mise en forme de l’ensemble des éléments graphiques du site.

Que ce soit les couleurs, les positionnements, les tailles des textes, les polices... bref, vous avez la main.

Personnellement, j’ai pris l’habitude de tester mes modifications en direct en utilisant les outils pour les développeurs intégrés à Google Chrome accessibles en faisant un clic droit sur l’élément qui vous intéresse, puis en cliquant sur “Procéder à l’inspection de l’élément”.

Agence Web Orléans

Un nouvel espace s’ouvre alors qui permet d’identifier les éléments de style (encadré à droite) liés à telle ou telle partie du site.

J’apporte ensuite les modifications “en live” pour tester les mises en forme de manière itérative.

Agence Social Média Orléans

Quand celles-ci me conviennent, il suffit d’ajouter les éléments au thème enfant. Par exemple, ici, pour modifier la taille du texte sur la page d’accueil, il suffirait d’ajouter ce contenu à la feuille de style que je vous ai montré tout à l’heure :

/*
Theme Name: Mon Theme Enfant
Theme URI: http: //example.com/
Description: Thème enfant du thème Le Parent
Author: Votre nom ici
Author URI: http: //example.com/about/
Template: leparent
Version: 0.1.0
*/
.home-featured-left h2 { font-size: 48px;}
Ajout d'une instruction CSS dans le thème WordPress enfant

Et hop ! C’est fait !

Adapter le code d’un modèle de page à vos besoins

Le principe d’un thème “enfant” est le suivant : il est maître sur tous les modèles de page, sauf si ceux-ci n’ont pas été créés dans le thème “enfant”.

Hmm... Oui, c’est pas clair. En gros, les modèles de pages que vous allez créer dans votre thème enfant viendront écraser les modèles de pages du thème parent. Je m’explique avec un exemple :

Imaginons que vous souhaitez modifier la signature en pied de page de votre site pour y ajouter votre copyright ou ce que vous voulez.

Pour ce faire, il va falloir copier le fichier “footer.php” qui se trouve normalement dans votre thème “parent” puis le copier dans votre thème “enfant”.

Maintenant que ce fichier “existe” dans votre thème enfant, c’est lui qui est utilisé : il “écrase” le “footer.php” du thème parent. Pour les autres modèles (“header.php”, “page.php”, etc...) votre thème continuera d’utiliser les éléments présents dans le “parent”.

La prochaine étape est donc d’identifier la ligne dans le code qui correspond au copyright et d’y ajouter vos différentes mentions en modifiant le code HTML.

Attention, vous pourriez être tenté de copier “tous les fichiers” de votre thème parent pour pouvoir les modifier à loisir dans votre thème enfant. C’est tentant... Mais c’est aussi une très mauvaise pratique.

En effet, si vous faites cela, vos nouveaux fichiers auront toujours la main sur les fichiers du parent, et donc... les mises à jour des modèles de pages ne seront pas effectives sur votre site.

Ne copier les fichiers et modifiez QUE les éléments dont vous avez vraiment besoin et que vous ne pouvez pas impacter dans les feuilles de style.

Ajouter de nouvelles fonctions à votre thème

Pour les fonctions du thème (celles qui se trouvent dans le fichier “functions.php”), c’est l’exception qui confirme la règle. En effet, les fonctions du thème parent seront toujours chargées quoi qu’il arrive... même si vous créez un nouveau “functions.php” dans le thème enfant.

Les fonctions de votre fichier dans le thème “enfant” seront chargées juste avant celles du thème parent. L’avantage, c’est que vous pouvez apporter toutes les nouvelles fonctions que vous souhaitez en étant sûr, qu’au moins, le fichier d’origine ne sera pas cassé.

Par exemple, si vous souhaitez ajouter des dimensions d’images personnalisées pour vos imports d’images, et bien il suffira d’ajouter ceci dans votre fichier “functions.php” du thème enfant.

// Ajout de tailles d’images personnalisées
function wpm_nouvelles_tailles_images() {
add_image_size( 'taille-01', 580, 200 );
add_image_size( 'taille-thumb', 80, 80 );
}
add_action( 'after_setup_theme', 'wpm_nouvelles_tailles_images' );
Ajout de nouvelles tailles d'images

Si vous souhaitez en savoir plus sur cette fonction “add_image_size”, je vous invite à découvrir la page dédiée du Codex WordPress.

Conclusion

Voilà, je pense que nous avons à peu prêt fait le tour de cette épineuse question des thèmes enfants WordPress.

Comme vous avez pu le voir, ce n’est pas fondamentalement compliqué si on a l’habitude de déjà mettre un peu les mains dans le cambouis... et c’est surtout une excellente pratique à mettre en place sur vos sites dès que vous utilisez un thème premium et que vous avez des modifications à effectuer sur celui-ci !

Ainsi, lors des prochaines mises à jour de votre thème parent... vous aurez l’esprit (presque) tranquille et vous pourrez appuyer sans (trop de) craintes sur le bouton “mise à jour”. ^^

Maintenant, car cela vaut pour TOUTES les mises à jour WordPress, je vous invite vivement à effectuer des sauvegardes fréquentes (du site ET de la base de donnée) pour éviter les mauvaises surprises... on ne sait jamais.

Merci à Alex de m’avoir permis de vous présenter ce tutoriel WordPress !

Si vous désirez en savoir plus sur le code HTML, CSS et comment fonctionne un thème WordPress, je vous recommande de jeter un oeil au guide Relooker son Thème. Alex y a mis tout ce qu'il faut pour pouvoir débuter dans le code sereinement.

Photo : © Christophe Fouquin - Fotolia.com

Si vous avez apprécié cet article, inscrivez-vous à la newsletter

Recevez gratuitement les prochains articles et accédez à des ressources exclusives. Plus de 10000 personnes l'ont fait, pourquoi pas vous ?

C'est parti, je m'inscris !

202 commentaires Ajoutez le vôtre

  1. Connaissant un peu WordPress, avec deux blogs à mon actifs, je confirme que la prise en main est facile, après pour la programmation c’est autre chose.
    C’est pour cela que j’ai confié la création à une agence et à un pro de ce « logiciel ».
    En tant que débutant et en creusant sur le net, on peut je pense malgré tout arriver à tout faire soit même.

    Répondre
  2. Je n’avais jamais compris avant cet article d’un thème enfant était ceci, j’étais totalement à côté de la plaque =D
    Mais j’ai du mal à comprendre : en fait cela permet de modifier à sa guise certains critères mais en permettant quand même l’application des mises à jour?

    Répondre
  3. Article très intéressant, qui va directement dans mes favoris !

    Cette technique m’était inconnue mais je pense qu’elle pourra me servir sur certains projets.

    Répondre
    • Merci pour ton commentaire Xavier 🙂
      Bonne continuation
      Alex

    • Merci beaucoup pour le commentaire Xavier ! ^^ Moi elle me sert toutes les semaines, je me suis vraiment retiré une épine du pied pour les MAJ avec les thèmes enfant. J’avais lu sur le sujet il y a quelque temps… Mais je n’avais pas encore eu l’opportunité d’en faire : maintenant je suis accroc !

    • (Tout le monde a compris que je disais : accro… hein ? ^^ Pas accroc ! 🙂 )

  4. Encore un très bon article, même lorsque c’est un contributeur (de qualité d’ailleurs).
    La ligne éditoriale est conservée : on reconnait le professionnalisme !

    Petites suggestions en vrac pour de futurs articles : transformation WordPress MU, méthodes de sauvegardes les plus intéressantes et simples (Dropbox…), Meilleures intégrations des grands acteurs du Cloud (plugins pour créer un espace de téléchargement privé ou non pour ses clients par ex, meilleures intégrations de documents de type pdf : flipbook html5,responsive, etc)…

    Bonne continuation à vous deux.

    Un fidèle lecteur.

    Répondre
    • Bonjour Nico,

      Tout d’abord, merci de ta fidélité ! Je suis ravi que les articles du blog te plaisent 🙂
      La qualité des articles est très importante à mes yeux, même s’il s’agit d’un article invité.

      Merci pour tes suggestions, toutes ne sont pas directement en rapport avec les thèmes mais c’est noté.

      Au plaisir d’échanger avec toi !
      Alex

    • Merci beaucoup Nico pour le feedback et le compliment ! ^^
      Pour les méthodes de sauvegardes les plus intéressantes et les plus simples… tout dépend de ton budget, mais moi avec un parc de sites (à moi ou clients) je passe par ça : http://blogvault.net/

    • Merci pour ta réponse Harold ; blogvault a l’air plutôt bien effectivement ! Seul Hic, le prix est trop élévé pour moi pour l’instant car la première formule ne me suffit pas, trop de dépenses et pas assez de rentrées en ce moment. ^^
      Je vais creuser encore…

  5. pal mal, mais comment faire si on a deja charcuter son theme?!

    Répondre
  6. Le thème enfant a été je pense la meilleure solution que WordPress permette !
    Il y’a eu un article sur le blog axe-net assez intéressant avec un thème enfant pour le thème TwentyTen optimisé SEO -> http://blog.axe-net.fr/wordpress-theme-enfant-twentyten/

    Répondre
    • Merci pour le lien Brandon 🙂

  7. Une astuce bien utile que je vais m’empresser de mettre en place plutôt que de devoir re-modifier à chaque fois un thème suite à une MAJ !
    Merci Harold 🙂

    Répondre
    • Ça nous est tous arrivé 🙂
      Bon codage Nicolas !
      Alex

  8. Merci Harold pour ce tutoriel,

    En tant que webmaster, après avoir créé plusieurs sites sous WordPress, j’ai récemment adopté un modèle de thème sur lequel je me base pour créer de nouveaux sites. Je pense que ce tutoriel va aider beaucoup de développeurs WordPress

    Répondre
  9. Trés bon article. Je pratique déjà le child theme et je confirme que c´est quand même plus facile a maintenir.

    Répondre
  10. Franchement, c’est un article intéressant, continuez dans cette voie, et d’ailleur votre site est dans mes favoris

    Répondre
    • Merci de visiter WP Themes Pro 🙂

  11. Je ne l’aurais pas mieux exprimé !
    Très bon récapitulatif sur l’intérêt du thème enfant et son déploiement. Il y a des années, alors que j’avais fait un thème pour un client sur la base d’une version premium, le client a fait une mise à jour et… boum, plus rien ne fonctionnait. J’avais appris jadis l’intérêt des mises à jour et surtout du développement du thème enfant.
    Merci donc pour ce récap. Et je confirme, n’oubliez pas de faire ainsi.

    Répondre
  12. Article très intéressant, qui va directement dans mes favoris !

    Répondre
  13. Merci pour cet article !
    Je n’ai jamais pensé que je pouvais faire un thème enfant à partir d’un thème de Elegant Theme, par exemple (dont j’utilise aussi un thème). Ce qui va en effet me permettre de ne plus avoir à faire de la « charcuterie » (en réalité quelques adaptations que je devais jusqu’à présent reprendre à chaque mise à jour du thème)..
    Bravo Harold et merci encore Alex !

    Répondre
  14. Je ne connaissais pas cette pratique, il est certain que je vais l’appliquer dès que possible. Merci pour le partage.

    Répondre
  15. Merci Harold pour cet article très clair. J’ai eu la semaine dernière une mise à jour catastrophique (3jours entiers pour tout remettre en place…), et je comprends mieux maintenant l’intérêt des thèmes enfant.
    Je m’y mets ce week-end, même si entretemps j’ai un peu «  »charcuté » mon thème initial.
    Et merci Alex pour cet article invité tout à fait pertinent.

    Répondre
  16. Merci pour cet article très clair.

    Sur un site en construction, j’ai déjà les thèmes parent Genesis + enfant Executive (donc les deux premium). Est-il possible de créer un thème enfant de l’enfant pour ne pas toucher au premier thème enfant premium (pour les mêmes raisons que celles citées dans l’article)?

    Si oui, comment fait-on?

    Répondre
    • Bonjour Olivier,
      Je n’ai jamais pensé à ce genre de chose mais théoriquement cela devrait être possible. Créez un dossier « petit fils » du thème et importez le fichier css du fils puis activez le pour voir si cela fonctionne.
      Bonne continuation
      Alex

    • Bonjour Alex,

      Merci pour cette réponse rapide !

      Olivier

  17. Hello,

    Merci pour ce rappel. J’ai lu cet article en suivant le rappel sur l’installation d’un thème dans un autre article de ce blog.

    Il manque pas mal d’info sur la personnalisation d’un thème enfant, et surtout sur son optimisation. Mais cela reste un bon rappel 🙂

    Voici un article complémentaire : http://www.creativejuiz.fr/blog/tutoriels/wordpress-personnaliser-un-theme-avec-child-theme-enfant

    Les critiques et commentaires sont toujours les bien venus 😉
    Merci.

    Répondre
    • Bonjour Geoffrey,
      Ravi de te voir ici 🙂

      Je ne pense pas qu’Harold voulais faire un cours sur la personnalisation de thème mais plutôt montrer l’importance d’utiliser un thème enfant. Après c’est sur qu’il faut creuser pour apprendre à rendre des modifications effectives.

      Merci pour ton lien, je vais y jeter un oeil 🙂
      Au plaisir

      Alex

    • Le plaisir est pour moi 🙂

      Oui j’ai bien compris le sens de l’article, c’est pourquoi je me permets de compléter à ma manière pour les plus curieux qui lisent les commentaires.

      Merci pour la qualité des articles !
      Bonne journée.
      G.

  18. Goooood !
    Je suis en train de développer mon site sous WP et arrivée presqu’à la fin (même si un site n’est jamais fini) je me pose la question suivante :
    J’ai mis les mains dans le cambouis mais j’ai gardé les natifs de mon site. Est-ce que je peux encore réaliser la création d’un thème enfant et ne pas avoir de risque de voir mon site partir en live ?

    Répondre
    • Bonjour Sandra,
      Si tu as créé ton propre thème, c’est toi qui gère les mises à jour donc pas de soucis. En revanche, si ton thème est susceptible d’être mis à jour par son auteur il vaut mieux que tu répercutes toutes les modifications au sein d’un thème enfant.

      Par contre, ça ne va pas être simple de tout retrouver 😛
      Bonne continuation
      Alex

  19. A que c’est compliqué de toujours vouloir faire Mieux sans les connaissances

    Merci à Harold et à Alex pour leur aide. Une certaine générosité!!! Succès à Vous

    Répondre
  20. Merci Harold, et à toi aussi Alex, impressionnant travail , bonne continuation

    Répondre
  21. Très bons articles dont celui-ci, MAIS très mauvaise mise en page : on est sans cesse « harcelé » par la barre d’icônes « Tweeter/FB… » à gauche et « Besoin d’aide.. » à droite qui encadrent et nuisent au texte…et qui s’ajoutent encore en fin d’article aux deux citées !!!
    C’est TROP pour moi…
    Celles en fin d’articles sont largement suffisantes !
    Alex, tes articles méritent mieux !
    bien à toi,
    PS : et ET en est à 83 thèmes pour le même prix maintenant !

    Répondre
    • Bonjour Claude,
      Merci pour ton commentaire.
      Concernant les éléments flottants, je teste pas mal de choses. Je verrai par la suite si je conserve ou non ces modifications.

      Tu dois être d’accord avec moi sur le fait que cela ne change rien à la qualité des articles 😉
      Bonne continuation
      Alex

      PS : Je viens de mettre à jour le nombre de thèmes d’ET, merci pour le rappel.

    • Bonjour,

      Je cherche désespérément comment modifier l’image mise en avant dans mes articles.
      Pourtant j’ai modifié dans réglage, média mais ça ne change rien
      Je pense qu’il faut changer dans le thème mais je ne vois pas ou
      Regardez c’est vraiment mini les images qu’on les voit.
      http://budget-en-main.com/

      Je suis certain qu’on peut changer
      Ca serait mieux que de changer encore de thème
      C’est peut être dans feuille style ? mais ou exactement ?
      Merci d’avance pour votre aide

  22. Merci pour ce « mode d’emploi » des thèmes enfant. C’est très bien expliqué et systématique. Pour la première fois, j’ai presque tout compris sur cette technique.

    Enregistré à l’instant parmi les marque-pages de Firefox.

    Pour le site wp-themes-pro j’ai une suggestion à faire. La succession de thèmes analysés et de commentaires produit des pages très longues. Ça serait vraiment utile un bouton en bas, à droite de la page, pour revenir rapidement au menu.

    Ce n’est pas du tout compliqué. Je l’ai moi même sur plusieurs de mes sites.

    Répondre
    • Bonjour Aralar,

      Merci pour ton commentaire et ta suggestion, c’est très pertinent 🙂
      Je vais mettre ça en place quand j’aurais 5 min.

      À bientôt
      Alex

  23. Excusez-moi si ma question est « bête » mais j’en suis au BaBA.
    J’aimerais savoir comment faire les modifications après avoir créé le thème enfant.
    La création d’un thème enfant se faisant en ligne sur l’hébergeur, les modifications du thème enfant se font-elles par la suite en ouvrant le dossier theme-enfant ou bien sur son tableau de bord? Le theme-enfant créé dans wp-content/themes doit-il être transféré vers son ordinateur (en local)? et si oui comment? ou bien cela se fait d’office? Merci

    Répondre
    • Si ma question est peu claire, je la formule autrement: vu que le thème enfant se crée en ligne sur l’hébergeur, je ne comprends pas bien l’intérêt d’installer le thème en local sur son ordinateur puisque les modifications et la personnalisation du thème se fera en ligne. Peut-être pour faire des tests?

  24. Bonjour,
    Je suis en train d essayer de creer mon theme enfant, jai donc crée le repertoire ainsi que la feuille de style mais lorsque je veux l activer dans wordpress, celui ci m indique que le theme est endommagé. »Le thème parent est manquant. Merci d’installer le thème parent « Grid Theme Responsive ». » Sauf que celui ci est installé. D ou peut venir mon erreur?

    Répondre
    • Bonjour Laurent,
      A mon avis, le problème vient de la spécification du thème parent dans la feuille de style du thème enfant. Il faut que le nom corresponde bien.
      Bonne continuation
      Alex

    • Bonjour,
      Super article pour moi qui suit en train de créer un site sous WordPress.
      J’ai suivi à la lettre la mise en place mais WordPress me met un message d’erreur qui est le suivant : Le thème est bien installé mais incomplet. Le modèle est manquant.
      De quoi s’agit-il ?
      Merci d’avance pour votre aide

    • Bonjour Laeticia,
      Je n’ai jamais rencontré cette erreur. Est-ce que tous les fichiers sont en place ?
      Tenez-moi au courant.
      Alex

    • Bonjour Alex, Bonjour Harold.

      J’ai lu votre article avec intérêt et je voudrais m’assurer que j’ai bien compris avant de faire n’importe quoi. Sur mon site, j’utilise le thème expound 1.6 (j’ai notamment apporté des modif à des fichiers tels functions.php, comments.php, featured-content.php, header.php… etc). Bref. J’ai vu qu’une MAJ du thème en 1.8 est dispo.

      Si je la fais tel quel, je perds toutes les modifications que j’ai apporté au thème en 1.6 (et je dois donc reprendre mes fichiers un à un pour de nouveau avoir mes modif).

      En créant un child thème, ce que je ne saisis pas bien, c’est: est-ce que je bénéficierai de la MAJ du thème en 1.8 tout en conservant les modif apportées sur mes fichiers en 1.6 ? (si c’est le cas, c’est un gain de temps énorme).

      Merci pour votre réponse

    • Bonjour Anais,

      Si vous mettez votre thème à jour sans thème enfant vous perdrez toutes les modifications. Je vous conseille de faire une copie de votre thème, de créer un thème enfant en y insérant les modifications apportées puis de procéder à la mise à jour. Si vous constatez des oublis, vous aurez toujours la copie pour remettre les choses en ordre.

      Bonne continuation
      Alex

  25. Ok Alex.
    Donc il me faut créer un theme enfant du theme parent expound auquel j’ai déjà modifié des fichiers.
    Puis-je faire tout simplement un copier-coller de tous mes fichiers du theme parent vers le theme enfant ?

    Répondre
    • Merci, très instructif.

  26. salut,
    merci pour le (tres) long tuto.. mais
    cela concerne les fichiers de Worpress, ok, mais celui de mon thème?…
    quand est-il des fichiers du theme parent situé dans des dossiers du genre include/monfichier.php?
    dois-recréer la meme arbo dans mon theme enfant ?
    j’ai essayé et cela ne prend que les fichiers situés dans mon theme parent.

    Répondre
    • Bonjour Pierre,

      Oui c’est ça. Il faut recréer la même arborescence, les fichiers du thème enfant prendront le dessus.
      Parfois il y a des inclusions de fichiers et il faut changer des fonctions pour éviter qu’inclure un fichier du thème parent. L’exemple type est l’utilisation de la fonction get_stylesheet_directory() au lieu de get_template_directory().

      Bonne continuation
      Alex

    • Bonjour Pierre,
      Même si ce commentaire date de 2013, auriez-vous la solution à ce problème ?( « quand est-il des fichiers du theme parent situé dans des dossiers du genre include/monfichier.php? »)
      Je bloque… si on se contente de copier/coller dans le thème enfant, ça ne fonctionne pas ! Je m’étonne de ne pas trouver de questions (et de solutions) sur les nombreux forums ou blogs dans lesquels je cherche… Merci.

    • Bonjour Laurent,

      Etant donné que ces fichiers ne font pas partie de la hiérarchie des templates, ils ne sont pas pris en compte automatiquement. Si vous voulez les modifier dans votre thème enfant, il faut les y copier et modifier le fichier qui les charge (généralement functions.php) pour qu’il charge la copie et non les originaux. Vous me suivez ? 🙂

  27. Encore merci pour tout !!
    Je ne sais pas comment j’aurai reussi a mettre en place mon site sans vous !
    petite question cependant :
    J’ai acheté le theme Furies , j’aimerai faire quelques modifs , j’ai donc fait un theme enfant.
    petit probleme , l’auteur a expliqué ou faire les modifs dans  » css/screen.css » , en fait tout le code est importé dans la feuille de style . lorsque j »edite la feuille de style CSS , il y a bien ecrit : « @import « css/screen.css »; »
    dans ce cas précis et si j’ai bien compris , je dois faire mes modifs dans le fichier d’origine css/screen.css sur mon bureau puis creer un dossier CSS dans le theme enfant et copier le screen.css modifié dedans, est ce bien cela ?
    merci d’avance

    Répondre
    • Bonjour Nicolas,

      Merci pour votre message, ça fait plaisir à lire 🙂
      Pour vous répondre, je pense qu’un fichier style.css dans le thème enfant devrait suffire puisqu’il charge le style.css du thème parent (qui charge lui même screen.css). J’espère avoir été clair ^^

      Bonne continuation
      Alex

    • Moi aussi j’ai acheté le thème Furies et j’ai créé mon 1er site WP pour un fleuriste. Je n’ai pas réussi à installer un thème enfant, d’autres dans les commentaires ont dit aussi qu’ils n’y étaient pas arrivés, donc je ne sais pas si cela fonctionnera. Le créateur du thème a répondu qu’il ne s’y connaissait pas en thème enfant et que ce n’était pas prévu mais qu’il y penserait pour une future mise à jour. En tout cas, ce thème était dans la sélection de mai 2013, mais « il déchire »..lol

    • Bonjour,
      A mon sens, je ne sais pas comment un thème ne pourrait pas être compatible avec les thèmes enfants. Tant que l’on importe la feuille de style, il n’y a pas de raison que ça ne fonctionne pas.

      Bonne continuation
      Alex

  28. Exactement ce dont j’avais besoin. Plus qu’a me faire des tests ^^

    Répondre
  29. Pour ceux qui veulent vraiment quelque chose de plus détaillé, toute une vidéo est consacrée à ce sujet sur lynda.com : http://www.lynda.com/WordPress-3-0-tutorials/WordPress-3-Building-Child-Themes/77859-2.html
    Quel que soit le thème que je teste, j’ai pris l’habitude de faire le répertoire enfant (toujours de type ../thèmes/Lethème-child).
    Hormis le fichier style.css, ajoutez aussi le screenshot du thème parent. Après l’avoir ouvert sous photoshop ou sur pixlr.com, ajoutez un calque texte avec simplement Chid (à la ligne) THEME, écrit en gros et en rouge vif. Sauvegardez dans le répertoire enfant en format png. Dans le dashboard, cela vous permettra de le repérer d’emblée.
    Inutile de prendre un thème premium contenant souvent de nombreuses fonctionnalités qui vous seront inutiles. Pour les pros, je ne dis pas, ils y trouveront souvent un gain de temps non négligeable. Par contre quoi de plus grisant pour des débutants que jouer avec la feuille de style, de modifier des agencements via les fichier PHP ? Des thèmes comme « responsive » de Cyberchimps, vous permettent de bien progresser dans la maitrise de WordPress, tout en s’amusant. (Voir la série de plusieurs vidéos sur ce thème (dans lesquelles le « prof » travaille sur un thème enfant) : http://www.youtube.com/watch?v=4QLE53bFC-E).
    Un détail important : hormis sur functions.php, si vous travaillez sur le header.php
    ou le footer .php, par exemple il vous faut copier tout le fichier xxx.php du thème parent, dans le thème enfant, avant de le modifier. De même si un fichier se trouve dans un sous-répertoire du thème parent, il faudra récrer la même arborescence, dans le thème enfant…
    Et maintenant… amusez-vous !

    Répondre
  30. Bonjour Alex,
    à rajouter à mon article précédent :

    préférez firefox et firebug, à google chrome : il arrive qu’avec chrome, certaines modifications n’apparaissent immédiatement à l’écran, en raison de son cache, qu’après avoir tapé Ctrl+F5 !
    Tout comme pour modifier des fichiers php, oubliez dreamweaver pour ceux qui le possèdent, dreamweaver rajoute parfois sans qu’on ne lui demande rien 🙂 des morceaux de code. Préférez phpdesigner ou phpEdit voire tout simplement dans les gratuits, Notepad++ ou CodeLobster. (jamais le bloc-notes windows !)
    Pour vos visiteurs, pensez aussi à franciser l’affichage en éditant le defaut.po généralement contenu dans thème parent/languages, avec le programme poEdit.

    Répondre
  31. Bonjour,
    J’ai créé le répertoire avec la feuille de style, mais WP m’indique que le thème parent est manquant!
    Il faut dire que l’architecture est bizarre : wp-contents/themes/enfold/puis 2 répertoires :1/ mac_osx et 2/enfold dans lequel se trouvent les fichiers, je ne sais pas comment ça a été construit et si c’est correct …
    J’ai mis mon thème enfold-child dans le répertoire wp-content/themes/

    Répondre
    • Bonjour Jean-Bernard,
      Je pense que vous avez un répertoire de trop. Mettez seulement le second dossier enfold dans wp-content/themes/

      Bonne continuation
      Alex

    • Bonjour,
      Merci pour votre message 🙂
      Pour la création de thème, je vous conseille http://wordpress.bbxdesign.com
      Bonne continuation
      Alex

  32. Bravo pour cet exposé, qui éclairci ! Merci pour tout le temps que vous passez bénévolement, pour nous enrichir ! C’est une denrée rare actuellement !!
    J’ai participé au dernier Word-Camps à Paris et j’ai bien aimé l’accueil, l’esprit des « conférenciers » qui ont le sens du partage.
    Cordialement

    Répondre
    • Bonjour,

      Merci pour votre message. Figurez-vous que j’étais orateur au WordCamp.
      Peut-être nous verrons-nous au prochain 🙂
      Alex

    • Bonjour Alex. Ta page est la page que je consulte toujours en premier, comme j’ai ton guide (superbe) j’aime bien apprendre de toi. Mais voilà que pour cet article qui est bien écrit, je n’arrive toujours pas à comprendre le thème enfant… Pour me rassurer SVP, comme c’est mon premier site et que le langage de programmation m’est assez inconnu. Si j’installe la stylesheet avec le code, lorsque que j’ajoute des images, des sliders, du texte… sur mon thème enfant, ma stylesheet reste intacte et est-ce correct ?

      Du même coup, lorsque je dois modifier des fonctions, j’ai DIVI (le thème parent) en haut à droite et je vais dans celui-ci pour les function.php etc… Je reviens à mon thème enfant, les modifications sont faites et ma feuille stylesheet n’a jamais changé. Est-ce qu’en travaillant comme cela, c’est correct ?

      J’ai téléchargé un update de Divi (depuis que j’ai le thème enfant) et tout fonctionne comme avant. Aurai-je une surprise dans quelques jours ? Bon, plein de questions, mais j’ai l’impression que j’ai manqué quelque chose, comme importer des .php dans mon thème enfant… J’espère que j’ai été clair ? 🙂 Merci beaucoup pour ce que tu fais pour les autres, bel exemple d’altruisme dans ces temps où cette qualité semble disparaître. Bonne route ! Daniel

  33. Merci pour cet article qui clarifie bien une question qui traînait dans ma tête depuis wordcamp.

    Le thème enfant permet de faire toutes les modifications que l’on souhaite sur un thème sans abîmer l’original. Et… en plus… de pouvoir permettre la mise à jour du thème sans perdre les changements qu’on avait effectués.

    Pour la pratique… il faut mettre la main dedans et s’arracher quelques cheveux et… respirer 🙂

    Merci Alex et Harold 😀

    Répondre
    • Il est dit qu’il faut créer le fichier style.css et le placer dans le répertoire du thème enfant et qu’il faut y copier aussi tous les fichiers qu’on va modifier. Mais quand on fait les personnalisations à partir du tableau de bord, comment savoir quels fichiers vont être concernés et impactés par les modifications? Par ex. si on met une image de fond, toutes les pages seront modifiées. Mais comment savoir quels fichiers il faut dupliquer dans le thème enfant ?

    • Pierre, avant de vouloir modifier un thème que ce soit directement (hautement déconseillé) soit par un thème enfant, il est absolument nécessaire de comprendre :
      1/ comment fonctionne globalement WordPress
      2/ à quoi sert (ou que fait ?) un fichier php et un fichier css
      3/ comprendre comment est bâti le thème choisi..
      A noter : tous les thèmes n’acceptent pas les modifications via un thème enfant, sauf à mettre les mains dans le « cambouis » de fichiers comme function.php (Je suis tombé sur un thème dont le header.php était « bâti » en fonctions…)

      Le thème enfant permet simplement,  » d’écraser » ou de « sur-écrire » (override en anglais)
      1/ certaines lignes du style.css du thème par de nouvelles données (couleur, arrière-plan, typographie…) Ce sont les données dans la petite fenêtre de droite, qui apparaissent quand on tape F12, (ou inspection de l’élément) dans chrome ou dans firefox.
      2/ de modifier la présentation à l’écran, de la page, dans
      – l’en-tête via header.php
      – le corps ou le contenu de la page d’accueil (homepage) via index.php
      – le pied de page via footer.php
      – et dans les autres pages, via leur fichier php respectif.

      Ainsi par exemple, ton image en background, se trouve précisée une seule fois, dans le fichier css (F12, body sélectonné dans le fenêtre de gauche, « background » dans la petite fenêtre de droite…) même si cela affecte l’affichage de toutes les pages (à moins d’avoir un background différent selon les pages)
      Ne nous leurrons pas, même si le thème peut être partiellement francisé, le code restera toujours en anglais.
      Dans une discussion en cours sur linkedin, il apparait clairement aux yeux de presque tous les intervenants, que pour modifier un thème, un minimum de code ( et donc de sa compréhension) est indubitablement nécessaire. Cela ne s’apprend pas simplement en une soirée. Il faut donc mettre la main dans le « cambouis ».
      Souvent les vidéos sont plus explicites que des pages d’articles (pour moi, cela a été le cas et c’est grace aux vidéos de Tyler Moore et de Katrinah que j’ai compris). En voici 2 simples sur les « child themes ») :
      http://www.youtube.com/watch?v=bOpMOHJTZow (1ière partie de 1/2)
      et surtout
      http://www.youtube.com/watch?v=4QLE53bFC-E (1ière partie de 5…)

  34. Excellent article qui présente, selon moi, la bonne façon de s’y prendre quand on se lance dans la manipulation d’un thème.

    Répondre
    • Bonjour,
      J’ai un le thème primium aegaeus. Après avoir lu votre article, j’ai crée un child theme et j’ai commencé à copier les fichiers que j’avais modifié.
      Notament un widgets de contact.

      Celui se trouvait dans le fichier monthemeparent/includes/widgets/
      J’ai donc remis le fichier non modifié à cet emplacement là.
      et dans mon thèmes enfant j’ai crée childthemes/includes/widgets/
      la même arboressence de dossier dans lequel j’ai coller le widget contact modifié.

      Malheureusmentcela ne fonctionne pas. Pourquoi ? est ce que je dois le charger dans mon fichier fonction.php ?
      Merci d’avance

    • Bonjour,
      A priori tout est bon, une question bête : avez-vous activé votre thème enfant ? ^^
      Tenez-moi au courant.
      Alex

    • Bonjour,
      j’ai bien activé le thème,
      Finalement je me suis dit qu’il falait que j’appelle le widget dans mon fichier function.php, après plusieurs tentative j’ai réussi à l’appelé avec incluse « widgetcontact.php »
      Le problème c’est qu’il ne prend pas le dessus sur celui qui est dans le theme parent. Pour qu’il fonctionne je dois enlever celui du theme parent.
      bref c’est pas terrible

  35. Tout d’abord, merci pour cet article qui m’a permis de créer un thème enfant sans soucis pour un site de e commerce tout en étant quasi débutante dans WordPress (www.celineroland.fr). Par contre, lors le création d’un premier site, je n’avais pas réalisé cette manipulation et je me demandais comment la corriger (c’est le site http://www.dansebergues.fr) Est-il possible de créer un thème enfant du style du thème twenty eleven utilisé pour le site, de copier dedans le code éditeur de la feuille de style que j’ai modifié pour ensuite utiliser ce thème enfant et enfin pouvoir faire les mises à jour ? Ai-je été claire, je ne sais pas !!!
    J’avais essayé auparavant une manipulation avec le serveur uwamp et j’ai complètement bloqué mon site.
    Merci pour votre réponse

    Répondre
    • Bonjour Céline,
      Je ne suis pas sûr d’avoir compris la manipulation que vous voulez effectuer :S

  36. Bonjour,

    J’ai voulu changer la page d’erreur 404 en copiant le fichier original et en changeant la phrase type mais cela à bloquer la page d’erreur la rendant inaccessible. Je ne sais pas si cela vient de mon thème ou de mes changements. Est-ce que vous avez une idée de ce qui ne va pas ? (J’utilise le thème Mystile qui est compatible avec Woocommerce)

    Répondre
    • Bonjour Leyla,
      Difficile à dire sans voir, peut-être une erreur au niveau des modifications.
      Bonne continuation
      Alex

  37. Cet article est super, merci beaucoup !! Il m’a été très utile car il m’a fait prendre conscience de certains enjeux, je vais changer mes mauvaises habitudes ^^

    Répondre
  38. Bonjour et merci pour cet article de qualité.

    J’ai procédé comme indiqué dans le tuto, mais j’obtiens le message d’erreur suivant :

    Thèmes endommagés

    Les thèmes suivants sont installés, mais incomplets. Les thèmes doivent avoir au moins une feuille de style et un modèle.

    Nom Description
    theme47929-enfant Le thème « theme47929 » n’est un thème parent valide.

    Il faut savoir que le theme47929 (il s’agit du thème « Backup » que tu a promu sur cet article : https://wpmarmite.com/themes-wordpress-janvier-2014/) est déjà un thème enfant de « Cherry Framework ».

    Mon fichier css est le suivant :
    /*
    Theme Name: theme47929-enfant
    Theme URI: http://www.templatemonster.com/wordpress-themes/47929.html
    Description: Thème enfant du thème Backup
    Author: Feonix
    Author URI: http://www.feoservice.com/
    Template: theme47929
    Version: 0.1.0
    */
    @import url(« ../theme47929/style.css »);

    J’ai également essayé avec la ligne suivante (pour le même résultat) :
    @import url(« ../theme47929/main-style.css »);

    Peut-être qu’il n’est pas possible de faire un thème enfant d’un thème qui est déjà enfant. Quelqu’un a déjà réussi ?
    Après, il semblerait que ça soit le thème parent « cherry » qui soit mis à jour donc si c’est le cas ça n’est pas trop grave.

    Merci pour les éventuelles réponses que vous pourrez m’apporter 😉

    Répondre
    • Bonjour David,
      Si le thème theme47929 est déjà un thème enfant, cela expliquerait pourquoi cela ne fonctionne pas. Après, il est peut-être possible de créer un thème enfant de thème enfant mais je n’ai jamais essayé.
      Peut-être qu’un lecteur pourra vous aider. Je partage votre question sur les réseaux sociaux.
      Bonne continuation
      Alex

    • Bonjour
      Les enfants ne sont pas d’enfants.
      Au revoir 😉

    • Merci pour vos réponses 😉

  39. Bonjour, et merci à vous encore une fois pour les articles qui sont toujours de très bonne qualité. J’aurais juste une petite question, thème enfant ok, mais qu’en est il des plugins et extensions, est il possible de faire des « plugins enfant » si l’on souhaite modifier le style de ces derniers par exemple. Merci.

    Répondre
    • Salut Laurie,
      Pour modifier les styles d’un plugin, tu peux les insérer dans ton thème enfant 🙂
      Sinon certains plugins ont des fichiers CSS dédiés. Après c’est au cas par cas.

      Bonne continuation
      Alex

  40. Bonjour ! Premièrement, merci pour vos trucs et astuces que je lis souvent, ils m’ont aidé. Là, j’ai un problème… J’avais un thème enfant du thème Divi de Elegant Theme, J’ai dû faire des changements de domaine principal…

    1. J’ai téléchargé WordPress à partir de Softaculous.
    2. Je n’avais donc plus de thème enfant et à la mise à jour de Divi, j’ai dû mettre les mains dans le « cambouis » pour utiliser une de vos expressions. Mon site fonctionne correctement 🙂
    3. Mais, maintenant, je me retrouve avec 3 sites (dont auxtipis…) où je n’ai pas de thème enfant, j’ai effectué quelques changements ici et là et j’ai essayé de refaire un thème enfant, sans succès.
    4. Je ne sais pas si je suis nul (pourtant j’arrive à me promener dans les css, footer, header…) je n’arrive pas à comprendre ce qu’il faut que je fasse à chaque changement de lignes… (enlevées/ajoutées…)

    Pour avoir un thème enfant, à partir de MAINTENANT (excusez-moi pour les lettres majuscules… ) que pourrais-je faire ET quand j’enlève quelque chose au thème parent, comme il n’y a rien de semblable au thème enfant, aie-je quelque chose à modifier ? Et quand j’ajoute quelque chose, dois-je l’ajouter au même dossier (ex : header) et est-ce que ça doit être ajouté à la suite de ce qui aura été fait à la feuille de style css ET au header (exemple) OU seulement dans le style sheet… Mes problèmes de compréhension sont là. Et j’ai peur de tout perdre à la prochaine mise à jour. Pour les plugins, quand je mets à jour, dois-je changer quelque chose.

    Je sais que mes questions sont nombreuses et peut-être pas toutes claires, mais j’apprécierais qu’on m’aiguille SVP ! Passez une belle journée/soirée. Merci d’avance pour votre aide et bonne route ! Un québécois à 33 degrés + humidité, haha…

    Répondre
  41. @ Feonix :
    Cherry est un framework qui permet de construire rapidement un thème, via un thème-enfant. (Tout comme themify builder inclus dans le thème gratuit « basic » de themify)
    Quel que soit le thème enfant proposé, ce thème enfant est là pour soit montrer un exemple de ce que peut faire le framework, soit permettre une utilisation rapide d’un thème, sans bidouillage.
    Que contient ton thème enfant ? un fichier style CSS, parfois un screenshot.png et vraisemblablement quelques fichiers php pour ajouter ou modifier des fonctionnalités.
    L’immense majorité des lignes incluses ne seront pas modifiées lors de mises à jour. Ce seront surtout des mises à jour du thème framework qui seront modifiés, je pense. Donc, si j’ai raison, tu peux tranquillement modifier le thème enfant sans grande conséquence ultérieure.
    Maintenant, tu peux te poser une autre question : pourquoi ne pas utiliser d’emblée Cherry framework pour faire ton propre thème enfant, en récupérant éventuellement si besoin est, des lignes de code dans le function.php (vraisemblablement présent dans le thème enfant). As-tu déjà essayé de travailler avec cherry,

    Pour info : je déconseille basic themify car il n’est pas totalement responsive, de plus problème de SEO et forum exclusivement ouvert sur souscription payante…
    Par contre, les thèmes de SIteOrigin comme Vantage (gratuit) comprennent un page builder drag and drop en back et en front-end. Le page builder peut même être téléchargé et utilisé en extension dans d’autres thèmes..
    Là j’ai acquis le superbe thème « Total » de A.J. Clarke sur WPExplorer.com : ça décoiffe, on peut tout faire avec, car lui aussi inclut un framework : visual composer et Redux… En plus, un support par A.J. Clarke de très haut niveau, c’est un vrai « cador » de WP !
    Je suis en train de terminer sa traduction soignée (1940 lignes dans poedit… à traduire, et à vérifier, ça prend un peu de temps… lol)
    Autre framework mais déjà plus ardu : gantry…

    Répondre
    • Merci pour les infos et désolé pour le temps que j’ai mis pour répondre (je n’étais pas retourné sur cette page depuis un moment ^^)

      J’utilise Cherry car c’est le framework qui est utilisé pour le thème que j’ai choisi, je ne créé pas de thème, le webdesign n’est vraiment pas mon truc.

      Le thème enfant contient plusieurs fichiers CSS et toutes les images du thème (puces, background, etc …).

  42. @daniel-nicolas lapierre
    si tu te rappelles des fichiers que tu as modifiés, tu reprend le thème initial, tu le « dézippe » de manière à avoir les fichiers .css et .php
    Il existe des sites de comparaison de fichiers, sur lesquels tu peux charger par exemple function.php du thème initial et le même fichier function.php modifié (récupéré sur ton serveur). Il va t’indiquer en surligné, de suite, les différences entre les 2 fichiers.
    Ensuite tu n’as plus qu’à regrouper les modifs dans un thème enfant que tu auras créé… Tu réitères l’opération, pour tous les fichiers modifiés..
    J’espère que cela t’aidera…
    Enjoy…

    Répondre
  43. @Jean-Jacques Schaeffer
    Merci beaucoup pour les infos que tu me donnes aussi rapidement ! J’apprécie beaucoup ton aide. Aurais-tu, svp, un exemple de « site de comparaison de fichiers » ? À partir de là, je devrais pouvoir me débrouiller, merci infiniment Jean-Jacques…

    Et, pendant que j’ai quelqu’un 😉 quand j’ai enlevé des choses aux fichiers header.php (par exemple le script du «search» que je ne veux pas dans ma page), si je n’ai pas fait de header.php dans le thème enfant, aie-je quelque chose à faire ? Mes questions ont peut-être l’air stupide, j’espère que vous comprendrez que je débute…

    1. Ma compréhension de ce qu’on enlève du parent VS l’enfant… ??
    2. Si j’ai changé des choses dans le footer.php, au début, au milieu et à la fin, disons… Dois-je tout copier-coller le footer du parent ou les bouts… et dans le même ordre ?
    3. Finalement, le style sheet css, j’y mets tout le css ?

    Espérant ne pas avoir l’air trop imbécile.. 🙂

    Bonne journée à tous (toutes) !

    Répondre
  44. 1/ le site de comparaison : http://www.diffchecker.com/
    (sinon possibilté aussi du programme winmerge )
    2/ Dans le thème enfant, on crée les fichiers style.css et function.php.

    Dans style.css (enfant) on n’inscrit que les modifs trouvées avec firebug ou avec google (commande F12), par exemple. Le code ajouté dans la css, écrasera le code de la css du thème parent.
    Dans function.php on n’inscrit que les nouvelles fonctions ajoutées… (pour faire simple, car on peut aussi supprimer ou remplacer des fonctions existantes par certaines lignes de code…)

    Par contre tous les autres fichiers php, comme header, footer, content… .doivent être copiés intégralement d’abord dans le child theme avant d’y être modifiés.
    Attention, pour modifier les fichiers dans des sous-répertoires du thème parent, il faudra recréer la même arborescence dans le thème enfant !

    Répondre
  45. Merci encore une fois Jean-Jacques ! Avant de voir votre réponse, j’avais réussi (en «googlant») à trouver WinMerge. Déjà , grâce à vous, j’ai un nouvel outil qui m’aidera à remettre un thème-enfant. À l’avenir, j’installe dès que je commence une nouvelle installation WordPress.

    Je vais voir votre lien et je me mets à la tâche. Merci pour les trucs sur les fichiers, l’arborescence (important de le savoir). Y a des détails, comme ça, qu’on ne retrouve pas souvent dans les trucs et astuces… Bonne route à toi, c’est bien gentil ! 🙂

    Répondre
  46. Super article ! Merci 1000 fois !

    Je débute, n’ayant pas peur de mettre un peu les mains dans le camboui, je fais quelques modifs sur le thème quand j’ai besoin, un peu maladroitement certes ^^.
    Il y a parfois un module à dispo dans les option du thème (sur Port de themetrust notamment) mais je me posais vraiment la question à comment créer moi-même ce « module ». La réponse m’apparaît, et me semble toute simple.

    Donc encore merci. wpmarmite m’est d’un grand soutien dans le web, je me découvre une passion et… et…. ben c’est trop cool !

    Bonne continuation
    A+

    Répondre
    • Merci beaucoup Samson, ça fait plaisir à lire !
      Si ce n’est pas déjà fait, inscris-toi à la newsletter pour recevoir les articles suivants 😉

      A bientôt
      alex

  47. Bonjour
    Très intéressant
    Par contre quand on a déjà MAL AGIT…
    J’ai déjà trituré le thèmes de base dans tous les sens…
    Peut on revenir en arrière pour faire un thème enfant ?

    Répondre
    • Bonjour Jean-Marc,
      Si vous avez le thème original, il va falloir le comparer avec votre thème actuel et mettre tous les ajouts dans le thème enfant…
      Cela va faire pas mal de boulot.

      Bon courage
      Alex

  48. Comment faire si on a deja commencé de charcuter notre site et qu’on tombe sur ton article, car si on active le theme enfant on doit tout refaire images menu etc ??

    Répondre
    • Salut Chris,
      Malheureusement, tu vas devoir migrer tes modifications dans le thème enfant sinon tu peux leur dire adieu en cas de mise à jour de ton thème :/
      Pour retrouver ce que tu as fait, je te conseille cet outil pour comparer les fichiers actuels de ton thème et les fichiers originaux : https://www.diffchecker.com/
      Ça fait un peut de boulot mais ton thème sera propre 🙂

      Bon courage
      Alex

  49. C’est bien ce je pensais sniiiiif ;( pourquoi je suis pas tombé dessus avant ahah
    Merci pour la reponse rapide en tout et pour ton site qui m’a bien aidé aussi 😉

    Répondre
  50. Merci, Alex, pour ce tuto très clair, une fois lu attentivement bien sûr !

    Répondre
  51. Bonjour,
    Je suis en train de concevoir mon premier site.
    J’utilise le thème Adventurous qui me convient bien.
    Cependant, je souhaite modifier la couleur du menu, l’entête et la couleur de certains textes…Donc rien de bien compliqué…
    Ce que j’ai réussi à faire en bidouillant le thème original…Mon site était niquel !
    Puis après une mise à jour, hop ! toutes mes modifs se sont volatilisées…

    Heureusement que j’avais copié toutes mes modifs dans un fichier word…

    J’en suis a créer un thème enfant afin d’arrêter de faire mon boucher… 🙂

    J’ai réussi à ce que word press reconnaisse mon thème enfant, je les validé…
    le fichier « header.php » a été modifié et apparaît comme je souhaite sur le site (enfin presque…j’aimerai juste que le slide soit centré…)

    Par contre, dès que je veux modifier le fichier style.css de mon thème enfant (qui apparaît tout blanc, sans écriture sur l’éditeur de wordpress), WordPress m’indique deux choses :
    « le fichier a bien été modifié ».
    Puis ajoute « Le thème est cassé. Le modèle est manquant »…

    Et lorsque je vais sur mon site, la chose que je voulais modifier semble ok mais tout le reste du site est en vrac…

    J’ai essayé de trouver des solutions sur pas mal de sites…En vain…

    Du coup, je vous envoie ce message.

    Merci pour votre aide.

    Répondre
    • Bonjour Sylvain,
      D’après ce que vous me dites, votre fichier style.css ne devrait pas être vide. Il doit contenir l’en-tête défini dans cet article (adapté à votre thème bien sûr). Ensuite il faut y insérer vos modifications CSS.

      Bonne continuation
      Alex

  52. Merci pour cet article instructif.
    Par contre, en essayant de faire un thème enfant avec le thème free theron-lyte on obtient le fameux écran blanc de la mort, dès que l’on active le thème enfant. ET difficile ensuite de reprendre la main.
    Au début, j’ai cru que l’erreur venait que j’avais mal compris la manip,mais en essayant avec d’autres thèmes, et notamment ceux par défaut de WP, le problème, heureusement, n’apparait pas.
    D’ailleurs,ce pb d’écran blanc est déjà signalé par un utilisateur dans la fiche du thème , mais pas particulièrement pour le thème enfant.
    Je pense donc que ce défaut dans ce thème est suffisamment important pour que je ne l’utilise plus.
    Cordialement
    Plum

    Répondre
  53. Super ! la structure de mon site est quasiment terminée…

    Merci pour cet article en tous cas !!

    Par contre, je viens de m’apercevoir que les icônes de mes liens sociaux s’étaient volatilisés !!
    Bizarre…Je n’ai pourtant pas toucher au code correspond…Lorsqu’on passe la souris sur les icônes, ils semblent pourtant être là, sauf qu’on ne les voit pas…

    Sais-tu d’où pourrait venir le problème stp ?

    Merci beaucoup pour ton aide !

    Répondre
    • Bjr Sylvain,
      le plus simple, pour vérifier, tu ouvres la page sur ton navigateur (pas MsIE ! Perso j’utilise Firefox dans sa récente version développeur) tu tapes F12, ce qui t »ouvrira en bas d’écran une fenêtre où tu pourras vérifier si tes icones sont bien présentes et si (dans la CSS, à droite) ce n’est pas simplement un problème de couleur ou de « display: none »…
      Enjoy…

  54. Bonjour,
    Merci pour cette article on ne peut plus clair.

    Cependant, ma question reflétè peut-être une incompréhension de ma part mais je la pose quand-même :

    – Est-il possible de créer un thème enfant APRÈS avoir déjà modifié le thème original ?

    Et puis : certains thèmes proposent le champ « Thème options » dans lequel on peut saisir des modifs de css.
    Sauvegarder ce que l’on a saisi dans ce champs est-il une alternative au thème-enfant ; dans la mesure ou il faudra refaire l’opération à chaque mise à jour du thème ?

    J’arrive un peu en retard sur cette page, mais j’espère pouvoir encore bénéficier d’une réponse.

    Merci encore Alex pour tous ces articles desquels j’ai beaucoup appris et évolué sur WordPress.
    Cordialement,
    Bern

    Répondre
  55. bonjour,
    merci bcp our cet article très interessant. Par contre, j’ai un soucis….je dois vraiment être nul, chez moi WordPress me dit « Le thème parent est manquant. Merci d’installer le thème parent » pourtant j’ai fait comme vous avez dit, je trouve pas où j’ai cafouillé….Un indice svp ?
    Merci bcp

    Répondre
    • Bonjour Mélanie,
      Le nom du template dans le fichier style.css ne doit pas être le bon (il doit être le même que le dossier du thème parent).
      Bien à vous
      Alex

    • Merci Alex ! j’avais pas mis les toutes les lignes que tu avais donné, c’était pour ça, ton commentaire m’a mise sur la voix =D
      Par contre si je mets le fichier fonctions.php j’ai une page blanche et j’en ai besoin car j’ai rajouté un menu secondaire =/ à moins que le fichier fonctions.php ne change pas pdt les MAJ ?

      Sur mon 2eme blog, j’ai tout fait comme sur le premier où ça fonctionne mais j’ai encore ce message « Les thèmes suivants sont installés, mais incomplets. Les thèmes doivent avoir au moins une feuille de style et un modèle. »
      Une idée ?

      Je t’abasourdie de question dsl ^^’ mais pour une fois que je trouve un tuto complet qui fonctionne j’aimerais aller jusqu’au bout, car c’est pas la première fois que je tente le thème enfant mais jusque là, c’était sans succès.

    • Bon ben, ma joie fut de courte durée….j’ai fait la MAJ de mon thème et la plupart de mes modification ont changé. Mais je pense que c’est parce que j’ai plusieurs fichiers css pour ce thème et que j’ai été obligée de faire des modif dans tous, donc jdois tous les mettre dans le theme enfant…Je suis dépitée pour le coup =/

  56. Il semblerait que @import est du « has been » car très récemment j’ai vu que « Codex » conseille d’utiliser wp_enqueue_script() dans la functions.php comme méthode « correcte » de mise en file d’attente la feuille de style du thème parent.

    Répondre
  57. Bonjour,
    Merci pour cet article très clair qui m’a permis de faire un thème enfant alors que je débute sur WordPress.
    Malgré tout, j’ai dû rater une étape car tous mes contenus se retrouvent inversés : ce qui est à gauche est passé à droite et inversement…
    Je m’explique : l’adresse que je communique ici est celle du thème parent (donc OK niveau disposition des éléments) et j’ai fait mon thème enfant en local pour ne pas tout abimer…
    Donc par exemple, le logo est passé à droite et le menu principal à gauche, les occurrences sont inversées : j’ai contact / informations pratiques / l’orthodontie / le cabinet… de même pour le footer, le widget 4 apparait en 1er, etc…
    Est-ce qu’il y a une intervention particulière que j’aurai oublié ?
    Merci par avance si vous avez une piste !!!

    Répondre
    • Bonjour Muriel,
      D’après ce que je vois, tout semble être rentré dans l’ordre 🙂

      Ravi de vous avoir aidé avec cet article !
      Alex

  58. Clair, net et précis. Je n’avais jamais pris le temps d’aller au bout des autres tutoriels précédemment trouvés… (trop long, trop détaillés au final on s’y perd, rien ne marche et le clavier termine son vol dans le placo!) Votre article m’ouvre à présent de nouvelles portes, qui vont me simplifier la vie. Merci pour l’efficacité et la simplicité de celui-ci.

    Répondre
    • Avec plaisir Arnaud 🙂

  59. Bonjour,
    Tout d’abord un grand merci pour votre article. J’ai besoin de votre aide car j’ai un problème. En effet, comme le précisait [email protected] au début des commentaires :  » la prise en main est facile, après pour la programmation c’est autre chose. »

    J’ai créé mon thème enfant et il fonctionne mais en partie seulement. Quand je fais une modification sur style.css de mon thème enfant, cette modife se répercute sur mon site. J’ai également pu intégrer tous les fichiers .php que j’avais modifié et quand je les teste ils fonctionnent aussi.

    Par contre, j’ai un gros problème sur le functions.php. En effet il semble que ce fichier de mon thème enfant ne soit pas appelé, comme s’il n’existait pas. Quand je teste des modifes dedans, ces dernières ne sont pas prises en compte sur mon site.
    Voilà mon fichier functions.php : http//pastebin.com/3yDvA94n

    J’ai pourtant l’impression d’avoir fait comme il faut, mais pourriez-vous y jeter un oeil et me dire ce qui ne va pas ?
    Je ne sais plus quoi faire ;(

    Merci beaucoup pour votre aide,
    Bien à vous,
    Camille

    Répondre
    • Bonjour Camille,

      Merci pour votre message 🙂

      Concernant votre fichier functions.php, vous ne vous êtes pas servi de la fonction add_image_size() correctement. Suivez ce lien pour voir comment faire : https://developer.wordpress.org/reference/functions/add_image_size/#comments

      Idem pour add_theme_support( ‘post-thumbnails’ );, il faut l’inclure dans une fonction liée au hook after_setup_theme

      Bonne continuation 🙂
      Alex

  60. Merci beaucoup !
    Je vais travailler dessus et quand cela fonctionnera je posterai ce à quoi cela ressemblera 🙂

    Répondre
  61. Bonjour,
    c’est un très bonne article concernant les thèmes enfants.
    J’ai une question concernant l’adaptation du code d’une page modèle.
    Si je veux changer la page footer.php, je dois copier le code de la page footer.php du thème parent et changer la ligne de code que je veux modifier?
    C’est bien cela?

    Encore merci pour cette article.

    Répondre
  62. Bonjour,
    J’ai eu un souci en mettant la ligne Version : WordPress me disait que mon thème n’était pas à jour, depuis je ne mets plus cette ligne.
    Pourquoi autour de vos codes l y a Version : la balise p?

    Est ce vraiment mieux de mettre le code dans functions.php plutôt que le code d’appel du thème parent dans style.css ?

    il n’y a pas une erreur de votre article, le reste des phrases dans functions.php ne devrait ils pas être hors code ?

    Depuis 3 ans que je fais les thèmes enfants, j’ai pris l’habitude quand je change de thème, de faire direct un thème enfant, tellement mieux.
    Merci, bravo pour l’article

    Répondre
    • Merci pour ton retour, je viens de mettre à jour l’article pour retirer les paragraphes du code 🙂

  63. Bonjour,
    Bon désolé de ce message, mais j’ai recommencé plusieurs fois, et n’y arrive pas du tout.
    wordpress me dis que le modèle est manquant, alors que je respect la démarche à la lettre… (j’ai essayé sur divi et twentyfifteen, et même résultat)

    Sinon encore merci pour ce site très très riche en information !!
    Mael

    Répondre
    • Bonjour Mael,
      Si vous obtenez ce message, c’est généralement que le nom du thème parent indiqué dans le fichier du thème enfant est mal orthographié. Vérifiez les majuscules, tirets, etc.

      Bien à vous
      Alex

  64. Article très intéressant pour un débutant comme moi ! Cependant je rencontre une petite difficulté. En effet, j’ai suivi toute les étapes de l’article en détail mais je n’arrive pas à modifier mon site. Je m’explique : suite à une mise à jour du thème que j’utilise, celui-ci fait appel aux titres des pages en début de chaque page. J’ai donc créé mon thème enfant, j’ai copié le fichier content-page.php dans le dossier du thème enfant et je l’ai modifié (j’ai juste retiré une ligne de code) mais rien ne change. Une petite aide ?
    Merci d’avance !

    Répondre
    • Bonjour,

      Avez-vous activé le thème enfant ?
      Alex

  65. Bonjour Alex

    J’ai bien compris l’utilité d’un thème enfant, j’en ai fait les frais il y a quelques années sur un de mes blog, mais là je fais un site avec Divi, et il offre tellement de possibilités que je me pose la question de l’utilité du thème enfant pour Divi ?
    Si j’ai bien compris, tant que je ne mets pas les mains dans le code, tant que je ne touche pas au style.css (et à priori je n’en ai pas l’intention, tant Divi me satisfait pleinement) je n’ai pas besoin de créer un thème enfant ?

    D’avance merci pour ta réponse et tes excellents articles.

    Répondre
    • Bonjour Delphine,

      Divi peut nécessiter un thème enfant pour effecter des modifications CSS qu’il n’est pas possible d’intégrer directement via les options.
      Bonne continuation
      Alex

  66. Bonjour,
    Du coup quand on créé le fichier functions.php que l’on place dans /www/wp-content/themes/monthemeenfant , on a rien à modifier sur les lignes de codes données plus haut pour que cela fonctionne?

    Merci de votre retour

    Répondre
    • Rien du tout Jehanne 🙂

      Bonne continuation
      Alex

  67. Bonjour,
    Merci pour ce tuto très clair.
    Cela dit, j’ai un petit hic.
    J’ai tout suivi à la lettre, et lorsque je fais une modif dans ma feuille de style.css, wordpress m’indique « Thème cassé : Le modèle est manquant ».
    J’ai tenté : copier le fichier style.php dans mon dossier enfant, l’enlever, intégrer tout le code du style dans le fichier style.css, etc.
    Rien n’y fait. Pourquoi ? Que dois-je faire ?
    Merci d’avance.

    Répondre
    • Bonjour Tiphaine,
      Mon petit doigt me dit qu’il y a certainement quelque chose que vous avez oublié. Il se peut que ce soit la modification de l’en-tête du fichier style.css.
      Bonne continuation
      Alex

    • Bonjour Alex,
      Merci pour ce retour rapide.

      Non, justement, j’ai bien copié le code que vous aviez donné dans votre tuto dans le fichier style.css, en prenant soin de remplacer par mes noms de thème.
      A moins d’avoir mal compris ?

      Est-ce que cela peut venir d’une page php que je dois copier dans mon dossier de thème enfant ? (vu que vous avez nommé cela en modèle). Si oui, laquelle devrais-je copier ?

      Merci d’avance.

  68. Bonjour
    Merci pour cet article intéressant.
    Je débute sous WordPress et en voulant modifier le css du thème Pinstrap, j’ai vu qu’il fallait passer par un thème enfant.
    Je suis convaincu de l’utilité du thème enfant, mais ça fait 3 jours que je m’arrache les cheveux dessus, ça ne fonctionne pas.
    J’ai bien mon thème enfant qui apparaît dans wordpress, mais mes modifs non!
    Quand je contrôle avec l’inspecteur d’élément, c’est le css du thème parent qui apparaît et non celui du thème enfant.
    Je suis un peu désespérée et suis à 2 doigts d’y aller sauvagement, ou de chercher une équivalence sous Joomla…
    Auriez vous une idée? Est ce qu’on peut créer un thème enfant avec tous les thèmes?

    Merci pour votre aide.

    Répondre
    • Bonjour Leslie,

      Je pense que cela provient du code dans le fichier functions.php ne doit pas être correct ou alors que le thème enfant n’est pas activé (cela arrive de temps en temps ^^).

      Tenez-moi au courant.
      Alex

  69. Et si on a plusieurs fichiers CSS dans un thème, faut-il l’indiquer dans le functions.php ?

    Répondre
  70. Bonjour et encore merci pour cette article Alex qui est trop bien expliquer
    une question
    il y à des fichier du thème parent que l on ne dois jamais ajouté au thème enfant?
    merci et bonne journée à tous
    éric

    Répondre
  71. Bonjour,
    Mon thème premium me propose une mise à jour et j’hésite à la mettre en place. Je m’explique :
    Vous parler bcp de modifications de thèmes? Mais que cela veut-il dire ? J’ai fais quelque modif mais uniquement dans les options du tableau de bord de wordpress (apparence/thème options/ et j’ai ajouté une ligne dans l’onglet custom css (apparence/thème options/style) .
    Puis je mettre à jour tranquillement? ou tous les changements que j’ai effectué dans thèmes options seront perdus?

    Répondre
    • Bonjour Olivier,

      D’après ce que vous me dites, cela devrait aller. Sauvegardez toutefois votre site au cas où.
      Bonne continuation

  72. Bonjour Alex,

    Je teste la création d’un thème enfant à partir du thème optimizer. J’ai utilisé le code function wpm_enqueue_styles() dans mon fichier functions.php, et appelé le style.css d’optimizer, cela fonctionne. Par contre, ce thème parent a deux feuilles css, faut-il appeler ces deux feuilles : style.css (main) et style_core.css et si oui, comment ?

    Merci d’avance pour ton retour, Annabelle

    Répondre
    • Bonjour Annabelle,
      Je ne pense pas que cela soit nécessaire. Le thème parent doit déjà appeler la seconde feuille de style via CSS (dans style.css) ou via son fichier functions.php (ou autre). Enfin, c’est à vérifier 🙂

  73. Bonjour Alex,

    Après plusieurs jours, j’ai enfin réussi à créer mon thème enfant !
    Le problème venait du nom du Template. Il a fallu que j’ajoute le chemin en entier « /kakia/kakia » (je m’étais focalisée seulement sur le 1er dossier Kakia…).

    Par contre, lors de la visualisation du thème enfant, l’apparence du site disparaît.
    J’ai remarqué deux choses :
    – dans le fichier style.css du thème parent : en-tête avec @import « css/screen.css »;
    – existence d’un autre fichier css dans le thème parent : editor-style.css avec pleins de codes.

    Sais-tu comment faire ? Dois-je modifier functions.php ? Quel bout de code est à rajouter ? Ou dois-je copier-coller le contenu editor-style.css du thème parent dans style.css du thème enfant ?

    J’espère que tu pourras m’aider, t’es mon seul espoir ^^. Je sens que c’est la dernière étape avant de pouvoir créer un thème enfant fonctionnel !

    Merci d’avance.

    Répondre
    • Bonjour,

      Le fichier editor-style.css correspond au code CSS que WordPress utilise dans l’administration.
      Pour screen.css, c’est un fichier appelé par le fichier CSS principal. Normalement, le code du fichier functions.php devrait charger le style.css du parent sans problème.

      Tenez-moi au courant.
      Alex

    • Bonjour Alex,

      Je vous remercie pour votre retour !
      J’ai vérifié de nouveau functions.php, il est identique au vôtre. Lorsque je fais une visualisation du thème enfant, sans l’activer, le CSS du site continue de sauter.
      Je ne vois pas pourquoi. Une piste Mr Marmite ?

      Merci d’avance !

  74. Bonjour, débutante WP niveau -1 🙂 je suis avec beaucoup d’intérêt tous tes articles vraiment utiles. Concernant les thèmes enfants, cela signifie que si l’on veut changer la couleur le police, de l’arrière plan ou autre « petits » trucs il faut le faire à partir du thème enfant ?
    Pour toute modifications on ne copie que les lignes à changer dans le répertoire enfant ?
    désolée pour ces questions basiques mais suis un peu perdue !
    merci 🙂

    Répondre
    • Bonjour Sophie,

      Oui, il faut faire ses modifications dans le thème enfant (sans toucher au thème parent).

      Bonne continuation

  75. merci beaucoup pour la réponse rapide 🙂
    Bonne soirée

    Répondre
  76. Salut Alex,

    Tout d’abord, je tenais à te remercier pour ce super tuto très intéressant !
    Toutefois, je rencontre des problèmes avec le fichier css de mon thème enfant. Toutes les modifications que j’apporte a celui-ci ne sont pas prises en compte sur le front ? J’ai pourtant bien suivi toutes les étapes nécessaires à la création d’un thème enfant mais rien y fait ! Une idée ?
    Merci

    Répondre
    • Salut Steve,

      As-tu bien vidé ton cache ? Est-ce que ton thème enfant est activé ?

  77. Bonjour,
    J’ai bien compris l’intérêt du thème enfant, cependant, je ne comprends pas comment ensuite c’est lui que j’utilise sur mon wordpress… Merci d’avance

    Répondre
    • Bonjour Nadia,

      Il faut activer votre thème enfant en parallèle de votre thème actuel 🙂

  78. Bonjour Alex,

    Tout d’abord un grand merci à la Marmite pour tous ces tutos. Je viens d’ailleurs de m’inscrire à la newsletter et j’ai reçu les premiers articles.
    Je suis complètement novice sur wordpress et j’essaie actuellement de mettre au point un blog. Je l’ai installé en local sur mon pc afin de me familiariser avec tout cela dans un premier temps (j’utilise Wampserver).
    Je viens de découvrir tout l’intérêt du thème enfant grâce à ce tuto…. et avant de faire plein de bêtises sur mon thème (j’utilise Blackoot Lite).
    Mais, j’ai des questions tout à fait basiques à ce sujet :
    – Puis-je créer un thème enfant en local ?
    – Comment renseigner la feuille de style dans ce cas (Theme URI ? Author URI ?) ?
    – Comment envoyer les fichiers créés étant donné que je n’ai pas encore de serveur ?

    Répondre
    • Bonjour Fred,

      Merci pour ton abonnement à la newsletter, j’espère que cela te plaira 🙂

      Pour répondre à tes questions :
      – Oui
      – Tu n’es pas obligé de les indiquer
      – Où veux-tu les envoyer ?

  79. Bonjour Alex,

    Merci pour ta réponse. J’ai réussi à faire mon thème enfant et à personnaliser le design de mon blog.
    Ma dernière question était mal formulée : quels fichiers dois-je envoyer sur le serveur lorsque je vais transférer mon blog en ligne (il est actuellement en local sur mon pc) ? Les fichiers du thème parent ? du thème enfant ? les 2 ? Idem pour les sauvegardes.
    Prochaine étape : le transfert vers le serveur web (je pense opter pour Ex2 Hosting). Alors, je vais replonger dans la Marmite pour trouver de l’aide. Existe-il un tutoriel sur ce sujet ? Merci.

    Répondre
  80. Bonjour
    Merci pour ces explications sur le theme enfant. J’ai parcouru l’ensemble des questions mais n’est pas vu mon sujet similaire.
    J’ai achete un theme, qui pour sa demo a deja un theme enfant
    donc est ce que je peux avoir deux themes enfants?

    sinon pour le meta que je vais devoir indiquer j’imagine qu’il faut que je reprenne l’ensemble de ses données meme si moi je souhaite modifier que la feuille de style ?

    Répondre
    • Bonjour,

      Si vous avez déjà un thème enfant, c’est lui qu’il faut modifier. Il n’est pas possible d’avoir deux thèmes enfants.
      Je n’ai pas bien compris votre seconde question. Tenez-moi au courant.

  81. Bonjour,

    Suite à un souci avec mon thème enfant, c’est avec plaisir que je relis votre article. Malgré qu’il soit complet et clair, je n’arrive pas à comprendre le blocage rencontré : je vois le thème enfant s’afficher dans le backoffice WordPress, je clique dessus pour l’activer ou avoir la prévisualisation, je fais des modifications (images ok, couleurs par endroit ok), mais impossible de changer le texte ni les liens des réseaux sociaux. J’ai pourtant vidé le cache et retenté plusieurs fois.
    Une idée de la faille ? Du fichier concerné ? Ou est-ce lié au template ?

    Merci pour votre aide !

    Répondre
    • Bonjour,

      À mon avis, cela doit être géré dans les options du thème ou alors vous n’avez pas modifié les bonnes choses dans le thème enfant.

  82. Bonjour,
    N’étant pas un pro, je vous pose cette question :
    J’utilise un thème premium pour lequel une mise a jour vient de sortir. Dois-je l’uploader et l’installer sur le thème enfant que je viens de mettre en place OU sur le thème parent ?
    Merci de votre réponse.

    Répondre
    • Bonjour,

      Vous devez remplacer le thème parent (faites toutefois une sauvegarde au cas où).

  83. Merci !

    Répondre
  84. Bonjour Alex,
    C’est en effet le fichier functions.php qui fait appel à mon fichier defines.php: require_once ( get_template_directory() . ‘/include/defines.php’ );

    J’ai donc pour l’instant un fichier functions.php vide dans mon template enfant (ainsi qu’un dossier include avec le fichier modifié defines.php à l’intérieur de ce template enfant. La hiérarchie est donc respectée).

    Si j’ai bien compris je dois modifier le functions.php du template enfant ? (sinon quel intérêt). Mais comment le modifier dans mon cas ? Merci

    Répondre
    • Bonjour Laurent,

      C’est bien ça, il faut modifier le fichier functions.php. Après, il va être difficile pour moi de te donner des indications précises car je ne connais pas ton thème et je ne peux malheureusement pas assurer de support pour les lecteurs du blog…

  85. Salut Alex,

    Peux tu stp nous donner la marche à suivre pour ajouter une vignette afin d’illustrer ce thème enfant dans la bibiolthèque des thèmes ? Me souviens plus… Merki !!!

    Répondre
    • Salut,
      Il te suffit de mettre un fichier screenshot.png dans le thème de 1200×900 pixels 😉

    • You’re the best !
      Merci beaucoup

  86. Bonjour Alex,

    Tout d’abord, merci pour ces articles, c’est très utile quand on se lance dans WP!

    J’essaye de créer un thème enfant de mon thème (Square Blog de DESSIGN). J’ai suivi ce tutoriel à la lettre et j’arrive à obtenir mon thème enfant, mais il y a des différences de disposition entre l’affichage du thème enfant et celui du thème parent.

    D’après ce que j’ai pu voir sur d’autres sites, cela pourrait venir du fait que j’ai plusieurs fichiers .css dans mon thème parent. Ce point n’est pas évoqué dans ton article. As-tu une solution ?

    Merci d’avance

    Répondre
    • Bonjour François,
      Logiquement, si le thème enfant est vierge il ne devrait pas y avoir de différence. Toutefois, il est vrai que tous les thèmes ne sont pas 100% compatibles avec les thèmes enfants. Dans ce cas, il faut voir dans le code de chaque thème parent pour voir comment les fichiers CSS sont appelés.

  87. Bonjour,
    J’ai acheté un thème premium. Dans son dossier dézippé j’ai un zip du theme et un zip du child theme. J’ai installé le zip du theme sur mon wordpress via l’administration de wordpress. Et maintenant je ne sais pas quoi faire. Tous les tutos que je trouve sont pour créer le child theme et ça a l’air compliqué. Moi je pense déjà l’avoir puisque j’ai ce zip child theme, mais je ne sais pas quoi en faire 🙁
    D’avance merci
    Ophélie

    Répondre
    • Bonjour Ophélie,

      En effet, tu le possèdes déjà. Si tu veux t’en servir, il ne te reste plus qu’à l’installer comme tu l’as fait pour le thème principal 🙂

  88. Bonjour Alex,
    Question dont je ne trouve pas la réponse…je me suis dit : Alex doit pouvoir me donner la solution…
    J’ai installé un theme parent et un theme enfant, j’ai activé le theme enfant (pour faire des modifs dans le cs) jusque là ça va…
    mais quand je veux installer un plugin, je dois le faire dans le theme enfant ou dans le theme parent ?
    Je trouve les 2 préconisations sur le net….donc je ne sais plus quoi faire
    Merci d’avance de ton aide précieuse !
    Alain

    Répondre
    • Bonjour Alain,

      Lorsque vous installez une extension, cela se fait sur WordPress. Le thème (qu’il soit enfant ou parent) n’a rien à voir là dedans. Rappelez-vous bien que les thèmes correspondent au design, à l’apparence et les extensions aux fonctionnalités.

      Bonne continuation

  89. Merci Alex,
    En fait dans mon theme (Vrukshagra), j’ai dû désactiver le thème enfant et activer le thème parent pour pouvoir installer les plugins, qui sont des plugins (visual composer, slider) intégrés au thème. Si j’essayais de le faire, via le theme enfant activé, j’obtenais un message d’erreur. Ou alors je devais installer ces plugins en les payant une seconde fois !
    Si ça peut servir

    Répondre
    • Merci pour ton retour Alain, je ne comprends pas pourquoi tu as eu ce problème…

  90. C’est sans doute particulier à ce template (en relisant la doc en anglais, c’est spécifié)
    Je me demande si c’est toujours le cas pour les thèmes vendus avec des plugins -payant- intégrés ?

    Répondre
    • Je ne sais pas. Cela doit dépendre de la manière dont l’auteur a codé le thème.

  91. Bonjour,

    J’aimerais savoir si le fait d’acheter le cadre genesis permet de faire davantage de modification sur le thème ou non?

    Est ce qu’il est pertinent d’acheter la thème enfant en premium pour pouvoir faire des modifications?

    merci,
    Perrine

    Répondre
    • Bonjour Perrine,

      Les thèmes enfant de Genesis ont déjà un style particulier. C’est pour cela qu’ils sont premium. Après, il faudra juste appliquer quelques modifications supplémentaires pour l’adapter.

      Bonne continuation

  92. Merci pour votre réponse!
    Bonne continuation à vous

    Répondre
  93. Bonjour Alex,
    Si je comprends bien, dans le cas où l’on a modifié un thème sans avoir créé de thème fils avant, il ne sert à rien de créer un fils du parent modifié pour faire une mise à jour ?

    merci…

    Répondre
    • Bonjour Denis, Si vous avez modifié le thème parent sans créer de thème enfant, vous ne pourrez plus avoir accès aux mises à jour de ce dernier. Avant toute modification d’un thème, il est nécessaire de créer son thème enfant.

  94. Bonjour Alex,

    Comment faire dans le cas par exemple d’un fichier css qui se trouve dans une arborescente du thème parent ?
    On reproduit la même arborescence dans le thème enfant ?

    merci !!!

    Répondre
    • Bonjour Denis,

      C’est différent d’un fichier PHP. Il faut le dupliquer et trouver la fonction qui charge celui du thème parent, la désactiver et la réactiver dans le thème enfant (je sais c’est plus compliqué).
      S’il n’y a besoin que de faire quelques modifs, il vaut mieux les ajouter directement dans le fichier CSS du thème enfant 😉

  95. Merci Alex,

    « S’il n’y a besoin que de faire quelques modifs, il vaut mieux les ajouter directement dans le fichier CSS du thème enfant »

    Vous vouliez dire « …le fichier CSS du thème parent » ???

    Répondre
    • Nous vous conseillons de toujours créer un thème enfant lorsque vous intervenez sur le code d’un thème.

  96. Bonjour,

    Je suis actuellement en train de faire un thème enfant et je comprend que ce soit la meilleur solution, cependant j’ai un petit soucis…
    Les malins qui ont crée le thème parent ont bombardé la feuille de style d’important(!)… Et cela me bloque sur certains points… Avez vous des solutions dans mon cas ?

    Répondre
    • Bonjour fanny, sachez que ces indications ne vous empêche pas de créer un thème enfant.

  97. Bonjour,

    Encore une question :
    si entre deux versions du thème, l’éditeur du thème a modifié le contenu d’un fichier css, le fichier css du thème enfant qui aura été précédemment personnalisé sera-t-il mis à jour ?
    J’imagine que non…

    Répondre
    • Bonjour Denis,

      Quand vous faites un thème enfant, le but est de faire vos propres modifications sans casser le thème parent afin de bénéficier des mis à jour de son développeur.

  98. Bonjour Alex,

    Je suis en train d’achever la formation WPChef (que je recommande fortement!) et en parallèle j’ai commencé ton livre « Relooker son theme ».

    Concernant l’utilisation des thèmes enfants, pourrais-tu éclaircir le point suivant : une fois que tu as activé le thème enfant « toto-child » dans l’interface d’administration de wordpress (Apparence -> theme).

    Est-ce normal que le thème parent « toto » apparaisse en dernier dans la liste des thèmes chargés et qu’il soit uniquement possible d’appuyer sur les boutons « Activer » ou « Prévisualisation en direct » sous ce thème, comme n’importe quel autre des thèmes « pré-chargés ».

    J’ai fais le test avec Twenty Sixteen en suivant le tuto de « Relooker son theme », et je cherche à comprendre comment je serai informé et quelle sera la procédure de mise à jour du thème parent?
    Devrais-je appuyer sur le bouton « Activer » du thème, le mettre à jour, puis ré-appuyer sur le bouton « Activer » du thème enfant?

    Merci pour l’info!
    CLément

    Répondre
    • Bonjour Clément, si vous avez bien suivi la procédure de création d’un thème enfant, les mises à jour du thème parent et donc de votre thème enfant se feront de manière habituelle via votre dashboard. Une fois le thème enfant activé, vous n’avez plus à toucher le thème parent.

  99. Bonjour Alex,

    Étant donné que les styles CSS définis dans le thème enfant viennent s’ajouter aux styles existants, j’ai du mal à voir comment faire pour relooker le CSS du thème parent.

    Exemple concret avec le thème « twenty sixteen » : comment faire pour diminuer la taille des titres h1?

    Avec l’éditeur de code, j’ai repéré le code CSS correspondant au titre h1 (il apparait plusieurs fois en fonction de la taille du media, mais commençons déjà par une taille en particulier) :

    @media screen and (min-width: 44.375em)
    .entry-title {
    font-size: 33px;
    font-size: 2.0625rem;
    line-height: 1.2727272727;
    margin-bottom: 0.8484848485em;
    }

    Je pensais donc qu’en copiant/collant ces lignes dans le style.css du thème enfant et en modifiant la « front-size », j’arriverais à mes fins, mais ça ne modifie rien.

    Aurais-tu la solution pour que je comprenne les modifications CSS dans la pratique?

    En te remerciant,

    Cdlt,
    CLément

    Répondre
    • Bonjour Clement, nous ne pouvons malheureusement pas faire de support faute de temps. Si vous voulez prendre le temps d’apprendre à modifier des thèmes je vous encourage vivement à lire le livre d’Alex sur Relooker son thème wordpress. https://wpmarmite.com/relooker-son-theme/

  100. Bonjour Nicolas,

    Je te remercie et je comprends que vous n’ayez pas le temps de faire le support des thèmes : ce n’est évidemment pas le but du blog.

    C’était plutôt pour avoir une réponse concernant le « principe » de la modification du CSS via le thème enfant.

    J’ai effectivement téléchargé et lu le livre d’Alex « comment relooker son thème » (très bon complément à la formation wpchef d’ailleurs). Dommage simplement qu’au chapitre 5.2 « Utiliser un thème enfant, la pratique indispensable », il ne donne pas un exemple de modification du fichier « style.css » : il y a bien l’en-tête, mais pas d’exemple de modification.

    Pour les fichiers *.php, c’est clair : je me suis d’ailleurs servi du footer.php fourni par Nicolas dans le divikit : très pratique à adapter.

    Par contre sur le « style.css », impossible de trouver la solution…

    Plutôt que de répondre directement à mon exemple, si vous en avez un sous le coude à la marmite, je suis preneur!

    Cdlt,

    CLement

    Répondre
    • Bonjour Clement, je ne suis pas sûr d’avoir bien compris donc je vais prendre un petit exemple. Vous avez fait un thème enfant du thème parent, vous avez donc un fichier style.css crée on est d’accord ? Vous souhaitez modifier le style d’un certain type de bouton du thème parent => Vous vérifiez où cela se trouve exactement dans le thème parent (console google peut être utile) et vous faites la modif dans le dossier enfant correspondant. Attention, le style de l’élement recherché peut être dans le dossier parent style.css mais aussi un autre dossier parent en .css

  101. Bonjour,

    Ça fait plusieurs fois que je lis qu’il faut créer une feuille de style, un fichier « functions », etc…
    Mais j’aurais une petite question :
    J’ai acheté, téléchargé et installé (mais je n’ai pas activé) le thème Enfold.
    Suite à pas mal de lecture (dont la majorité sur ce site :)), je me suis décidé à installer le thème enfant.
    Kriesi propose un thème enfant Enfold qu’il suffit simplement de télécharger et d’installer.
    Je l’ai donc fait, et je vois, sur WordPress, que je peux bel et bien l’activer.

    Mais, avant, petite question : Est-ce que je dois aussi modifier la feuille de style et le fichier « functions » en entrant les données que vous indiquez ? C’est indispensable, nécessaire, ou inutile ?
    (J’ai ouvert les deux documents, et il n’y a rien d’écrit en particulier.)

    Si je décide de les modifier en y ajoutant les données que vous indiquez dans cet article, est-ce que ça va se modifier automatiquement via mon FTP (et donc directement sur WP), ou est-ce qu’il faut que je retire tout de mon FTP, que je modifie les données de ces documents, puis que je ré-installe le thème enfant ?

    Merci beaucoup d’avance !! 🙂

    Répondre
    • Bonjour Maëva,
      Pour utiliser ce thème enfant vous devez simplement avoir installé le thème parent au préalable. Si Kriesi a fait un bon travail il n’y aura pas de problème. Vous pouvez vérifier vous même si les éléments dont nous parlons sont bien dans le fichier.

  102. Le functions.php ne fonctionne pas j’ai utiliser ça :

    Répondre
    • Bonjour Nicolas, le contenu n’apparaît pas

  103. Je crois que ça supprime le code automatiquement je vais essayer avec des #
    #

    Répondre
  104. Bonjour,
    Peux-tu t’on créer le thème enfant après coup, une fois le site finit. Je m’explique, j’ai fait un site et je ne connaissais pas l’existence de ce thème enfant. Je n’ai pas rajouter grand chose dans le code, juste un centrage ou 2, une taille de police… Le thème (virtue premium) propose une mise à jour que je n’ai pas faite jusqu’à présent. Mais depuis peu j’ai des problèmes avec le logo qui ne s’affiche plus et je ne trouve pas pourquoi. Je me dis que la mise à jour est peut-être nécessaire. D’où ma question sur le thème enfant.
    Merci
    Claire

    Répondre
    • Bonjour Claire,
      Le travail est contraignant mais il vous suffit de télécharger le fichier source du thème de créer un thème enfant et d’insérer les modifications que vous avez faite. Vous envoyez le tout et vous activez le thème enfant.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

La Marmite ne peut malheureusement pas fournir de support. Merci d'en tenir compte dans votre commentaire 😉

Si vous ne lui en voulez pas, donnez-lui un j'aime sur Facebook :



54 Shares
Share28
Tweet20
Share6