Créer un thème enfant dans WordPress

Créer un thème enfant dans WordPress

WordPress vous permette de personnaliser complètement votre site Web. Si vous connaissez HTML, CSS et / ou PHP, il n’y a rien que vous ne pouvez pas changer.

Il est donc naturel pour vous de vouloir modifier et adapter le look de votre site Web ou de votre client pour qu’il s’adapte à votre vision et à vos objectifs. Sachez qu’un seul thème WordPress peut être dériver en une infinité de design preuve encore de la puissance de la personnalisation d’un site.

Personnalisation de votre site WordPress

Lorsque vous essayez d’apporter des modifications à votre site Web, la première solution qui peut venir à l’esprit est de modifier le thème directement. Il suffit d’avoir un éditeur de fichier et une fonction de rechercher pour chercher tel ou tel propriété et la changer.

Cela signifie donc qu’on va changer des fichiers de notre thème. Hélas, cela va créer un certain nombre de problèmes.

Le plus grand inconvénient est que toutes les modifications apportées au thème de cette manière seront perdues une fois que le thème est mis à jour par son développeur. En conséquence, si on ne veut pas perdre les modifications, on va choisir de ne pas faire la mise à jour (ce qui est mauvais pour la sécurité) et si on va faire la mise à jour du thème on va perdre la personnalisation et les modifications faites sur notre site.

Utilisation d’un thème enfant

Le principe du thème enfant est de permettre la modification et l’ajout de fonctionnalités à un thème parent sans y apporter des changement à ce dernier.

Lire   Top 10 des plugins WordPress préférés

L’avantage majeur est donc de pouvoir bénéficier des mises à jour du thème parent tout en poursuivant les changements sur le thème enfant.

Il faut aussi noter qu’un thème enfant n’est pas une entité autonome, et qu’il dépend entièrement de son père pour pouvoir fonctionner.

Le thème enfant modifie ou ajoute des propriétés aux fichiers d’un thème existant.

Création d’un thème enfant

un thème enfant aura besoin de :

  • son propre dossier,
  • sa propre feuille de style “style.css”,
  • son propre fichier “functions.php” .

Voici comment faire :

  1. Créez un nouveau répertoire dans le dossier /wp-content/themes/NOM_DU_THEME_ENFANT ;
  2. Créez la feuille de styles CSS en nommant le fichier style.css ;
  3. Copiez / collez les lignes de code suivantes :
/*
Theme Name: Smartit Child
Description: Thème enfant pour smartit
Author: m-mas
Template: smartit
*/
@import url("../smartit/style.css");
.style1{
color: #005EA8;
font-weight:bold;
}

Le thème enfant va ainsi hériter de l’ensemble des fonctionnalités du thème parent. De fait, seuls les fichiers qui seront ajoutés dans le dossier du thème enfant surpasseront ceux du thème parent.

Personnaliser plus que le style

Envie de changer le header.php ? Ajoutez ce fichier dans le dossier enfant. Idem pour l’ensemble du template WordPress.

Vous pouvez également vous limiter à l’ajout d’une feuille de styles CSS et multiplier ainsi les changements purement visuels tout en conservant la structure HTML du thème parent. Cette technique est monnaie-courante pour les thèmes premium. Cela permet aux designers d’offrir plusieurs apparences pour un même thème.

Des fois quand on modifie une propriété du style dans le thème enfant alors que cette même propriété existe dans le thème parent, cette dernière n’est pas prise en compte. Dans ce cas il faudra ajouter “!important” devant pour que cette dernière priorité passe en avant. Il faudra aussi vérifier l’ordre des fichiers CSS pour résoudre une fois pour toute ce problème.

Lire   Top 10 des meilleurs thèmes WordPress pour créer son blog

Contrairement aux autres fichiers du thèmes (index.php, single.php, etc.), le functions.php ne sera pas écrasé par celui du thème enfant – si par cas il existe. Il sera au contraire charger juste avant le functions.php du thème parent. Vous pouvez donc ajouter des fonctionnalités au thème parent sans « casser » ce dernier.

Si vous avez trouvé cet article intéressant, merci de nous laisser un commentaire et de le partager !