En tant que développeur web, ne vous est-il jamais arrivé de devoir modifier le comportement d’un plugin pour satisfaire un besoin spécifique de votre client, lors de la création de son site web ?
En fait, ça m’arrive tous les jours, et souvent je ne peux m’empêcher de modifier le plugin fourni. Je sais, c’est mal.
- On perd l’avantage des mises à jour de ce plugin
- Il faut changer son nom pour éviter que les mises à jour intempestives n’écrasent nos modifications.
Dans un cas, comme dans l’autre, la situation n’est pas idéale, de la même façon qu’on ne modifie pas directement le coeur de WordPress.
Adieu les bonnes pratiques, bienvenue dans la réalité…
Pour les thèmes, le problème est depuis longtemps géré via les thèmes enfants.
Les thèmes enfants
Les thèmes enfants (child themes) sont une fonctionnalité importante dans WordPress. Ils sont utilisés pour personnaliser et étendre les fonctionnalités d’un thème parent sans modifier directement ce dernier. Voici quelques raisons pour lesquelles les thèmes enfants sont utiles :
- Personnalisation sans risque de perte de données : Les modifications apportées à un thème parent directement peuvent être écrasées lors de mises à jour du thème. Avec un thème enfant, vos personnalisations restent intactes, car le thème parent peut être mis à jour sans affecter le thème enfant.
- Facilité de maintenance : En séparant vos modifications dans un thème enfant, la gestion et la maintenance deviennent plus simples. Vous pouvez mettre à jour le thème parent en toute sécurité sans perdre vos ajustements.
- Contrôle et extensibilité : Les thèmes enfants permettent d’ajouter de nouvelles fonctionnalités ou de modifier le comportement existant d’un thème parent sans toucher à son code principal. Cela offre une flexibilité pour personnaliser le site à vos besoins spécifiques.
- Meilleure organisation : En regroupant les modifications dans un thème enfant, cela rend le code plus organisé et facile à gérer. Vous pouvez mieux comprendre et suivre vos propres personnalisations.
Pour créer un thème enfant, vous créez un nouveau répertoire dans le répertoire des thèmes de WordPress et créez un fichier style.css dans ce répertoire. Ce fichier doit inclure des informations spécifiques, notamment le nom du thème enfant et le répertoire du thème parent. Ensuite, vous pouvez ajouter des fichiers supplémentaires pour modifier ou étendre les fonctionnalités du thème parent.
En résumé, les thèmes enfants sont essentiels pour personnaliser un thème WordPress de manière sûre, organisée et sans risque de perdre des modifications lors des mises à jour du thème parent.
Et pour les plugins ?
Je suis tombé sur le pendant des thèmes enfants pour les plugins, et je ne comprends toujours pas que ce ne soit pas généralisé dans WordPress :
Cet outil vous permet de modifier un plugin WordPress -quel qu’il soit- sans perdre la possibilité de le mettre à jour. Cet outil fonctionne comme les thèmes enfants de WordPress où vous pouvez remplacer les fichiers qui existent dans le plugin enfant en créant une copie du fichier et ajouter des fichiers au plugin en créant de nouveaux fichiers. Vous pouvez également annuler toutes les modifications que vous avez apportées au plugin.
https://github.com/ThomasDepole/wordpress-child-plugin-tool
En espérant que cela vous serve aussi.