Créer un thème enfant pour customiser son site WordPress est une pratique très répandue et une étape presque obligatoire… Pourtant, il existe d’autres solutions qui auront, au final, le même rendu. Dans cet article, je vais vous expliquer de quelle manière et dans quels cas on peut se passer d’un Thème enfant…
Dans quel cas peut-on se passer d’un thème enfant ?
Le premier des cas de figure serait que votre thème WordPress vous comble entièrement et/ou que vous avez ajouté certains plugins pour palier à des fonctionnalités manquantes et que cela est suffisant pour votre projet. Dans ce cas, précis, il est possible de se passer d’un Thème Enfant.
Le second cas serait que vous avez besoin d’ajouter quelques lignes de code au fichier function.php, au header ou au footer de votre thème ainsi que quelques lignes de CSS à votre fichier style.css… Aïe ! Mais comment est-ce possible de réaliser ces modifications sans créer de thème enfant et sans craindre de voir partir ses modifications à la première mise à jour de thème venue ? La suite va vous intéresser…
Petit rappel de la composition d’un thème enfant
Pour créer un thème enfant, c’est très simple, il suffit de créer un dossier contenant 2 fichiers : le fichier functions.php et le fichier style.css… C’est tout ! Ensuite, il faudra envoyer ce dossier sur votre serveur via FTP puis activer ce nouveau thème dans votre back-office…
Pourtant, si vous n’êtes pas à l’aise avec le code, les éditeurs de texte et les logiciels FTP, cela peut vous paraître compliqué et je le conçois… Je vous propose donc une alternative !
1/ Ajouter ou modifier certaines fonctionnalités de votre thème
Traditionnellement, cette étape n’est possible que par l’ajout de code dans le fichier functions.php de votre thème enfant. Pourtant cela est possible d’obtenir le même résultat en utilisant un plugin nommé Code Snippet par Shea Bunge.
Une fois installé et activé, vous pourrez créer des bouts de code que vous activerez ou désactiverez facilement en fonction de vos besoins. L’avantage est que tout se passe depuis le back-office de WordPress. Pas besoin d’envoyer la mise à jour de votre thème enfant sur votre serveur à chaque fois que vous avez besoin d’ajouter ou de supprimer une fonction. C’est vraiment très pratique !
Vous apercevrez alors un nouvel onglet sur votre barre latérale gauche nommé “Snippets”. Cliquez sur “Add New” pour rajouter un bout de code. Vous pourrez lui donner un titre afin de le retrouver facilement et vous pourrez également ajouter une description.
Mais surtout, vous pourrez lui donner une condition afin que ce code soit actif sur l’ensemble de votre site, seulement dans la partie admin ou bien seulement du côté front-end.
Cette option serait plus compliquée à mettre en place avec un thème enfant !
2/ Injecter du code dans votre header ou votre footer
Modifier son header ou son footer est presque la première des motivations qui vous pousse à créer un thème enfant. Et bien, là aussi, nous allons pouvoir compter sur un plugin nommé Head and Footer Code par Aleksandar Urosevik.
Une fois installé puis activé, vous retrouverez les réglages de ce plugin dans l’onglet “outils” de votre back-office. Le plugin Head & Footer Code va vous permettre de rajouter du code entre les balises <head> et </head> ainsi que dans le footer avant la fermeture de la balise </body>.
Imaginez tout ce que vous pourrez faire à présent : ajouter des balises meta, “linker” une nouvelle police, ajouter des codes de tracking, comme ceux de Google Analitycs, et même du Javascript !
Mais ce n’est pas tout ! Le développeur a pensé à ajouter une option qui permet de choisir si l’on désire ajouter du code à l’ensemble du site ou bien du code que l’on chargerait que sur certaines pages ou sur certains “post type”. Si vous cochez ces options, vous verrez alors apparaitre un nouvel encart en bas de vos posts qui vous permettra d’injecter du code au coup par coup.
Cette fonctionnalité aurait été plus difficile à obtenir si l’on était passé par la création d’un thème enfant, n’est-ce pas ?
Il existe d’autres alternatives à Head and Footer Code disponibles sur le répertoire officiel de WordPress :
- Header and Footer par Stefano Lissa
- AddFunc Head & Footer Code par AddFunc
3/ Modifier le CSS de votre thème
En effet, modifier le CSS est monnaie courante et on peut très facilement se passer d’un Thème Enfant pour le faire. Il suffit d’utiliser la fonction “modifier le CSS” disponible dans le menu “Apparence > Personnaliser” du back-office. Toutefois, vous pouvez également enrichir cette fonctionnalité grâce au plugin WP Add Custom CSS développé par Daniele De Santis.
Face à la fonction native de WordPress ou face au fichier style.css d’un thème enfant, WP Add Custom CSS a le léger avantage de vous permettre de définir des règles CSS post par post !
4/ Créer une template de page ou modifier une template existante dans votre thème parent
Au grand regret de vous décevoir, pour effectuer cela, vous aurez bel et bien besoin d’un thème enfant ! À ma connaissance et après de nombreuses recherches, je n’ai pas trouvé de plugins qui permette de réaliser ces modifications… Enfin, j’ai trouvé un tutoriel qui explique que l’on pourrait ajouter une template de page en créant un plugin mais je n’ai pas vraiment été convaincue…
Sinon, j’ai aperçu un plugin sur le répertoire officiel mais celui-ci n’est pas compatible avec la dernière version de WordPress.
Quant à la modification d’une template de page de votre thème, telle que le fichier page.php par exemple, impossible de le faire “proprement” sans passer par sa duplication dans votre thème enfant…
En conclusion…
Il n’y a pas de bonnes ou mauvaises solutions. Vous pourriez très bien vous passer de plugins, créer un thème enfant ou bien le remplacer par des plugins comme on vient de le voir… L’idée de cet article est de démontrer que WordPress est tellement riche que vous trouverez toujours LA solution idéale ! Celle qui s’accorde à votre projet, à vos besoins ou à vos capacités !
Merci pour cet article, il est bien de savoir qu’il existe plusieurs possibilités pour modifier certains fichiers clés de WordPress comme le fonction.php. Perso, je préfère utiliser quand même un thème enfant qui me permet de diminuer le nombre de plugins installé et moins de plugins installés moins de difficulté à optimiser son site WordPress car c’est parfois un facteur intéressant à prendre en considération pour éviter de perte de la vitesse à cause d’un plugin.
Bonjour
En ce qui me concerne, je fais tous mes thèmes from scratch, je ne pars jamais d’un thème existant (si ce n’est le thème “boilerplate” que je me suis créé). Du coup je n’ai jamais réellement saisi l’utilité d’un thème enfant…
@JeanBambi Bonjour, cela t évite de perdre tes changements dans le code (donc dans le résultat souhaité) si tu effectues une mise a jour WP
Salut Lycia, c’est un très bon article que je viens de lire et comme tu le dis, WordPress est tellement riche qu’on trouve la solution à tout.
Personnellement, j’utilise toujours des thèmes enfants en terme de sécurité, cela me permet de ne pas perdre mes modifications une fois que le thème se met à jour. C’est la grande importance d’un thème enfant.
Sinon j’étais à la recherche d’un plugin qui me permettrait d’insérer du code dans le header ou le footer de certaines pages seulement et je l’ai trouvé grâce à toi. Merci encore
Bonjour,
J’ai consulté différents articles sur les thèmes enfants, une solution qui me semble très prometteuse. Cependant j’ai plusieurs questions qui émergent :
1) Ce thème enfant profite t-il des nouvelles fonctionnalités qu’offre une nouvelle version de WordPress lors d’une mise à jour ?
2) Et surtout, profite il des changements apporté lors de la mise à jour d’un thème ? Typiquement si mon thème est la version 2.0 et qu’il passe à la 2.1, mon thème enfant va t-il être bloqué en 2.0 ou subit-il aussi la mise à jour ?
–> Si MAJ du thème enfant il y a, tous les changements opérés (dans du php ou autre) disparaissent ? On perdrait l’utilité du thème enfant, mais ne pas avoir les mises à jour du thème parent est embêtant.
Mes questions sont sûrement bêtes et je m’excuse d’avance si se sont des banalités mais j’ai besoin qu’on éclaire ma lanterne.
Je lis avec passions vos articles d’une grande qualités et je vous remercie pour toutes les solutions que vous avez pu m’apporter jusqu’alors.
Cordialement,
François