Lorsqu’il est nécessaire de modifier quelques éléments sur un thème il est préférable de créer un thème enfant.
Créer un thème enfant
Il est utile de créer un thème enfant pour :
- les thèmes existants qui doivent être mis à jour sur lesquels nous souhaitons faire des modifications sans les perdre.
- assurer la préservation des modifications.
Pour créer un thème enfant il faut d’abord créer son répertoire qui sera placé dans wp-content/themes.
Il est recommandé de nommer le fichier comme son thème parent et d’ajouter à la fin du nom « -child » pour indiquer le thème parent.
Créer ensuite la feuille de style « style.css » dans le dossier du thème enfant. Elle doit contenir les données suivantes :
/*
Theme Name: Twenty Fifteen Child
Theme URI: http://example.com/twenty-fifteen-child/
Description: Twenty Fifteen Child Theme
Author: John Doe
Author URI: http://example.com
Template: twentyfifteen
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
Text Domain: twenty-fifteen-child
*/
- Ne pas mettre d’espace entre l’intitulé de l’information renseignée et les « : » pour cause d’erreur.
- La ligne « Template » désigne le thème parent.
La feuille de style est le seul élément requis de base dans un thème enfant. Mais functions.php est nécessaire pour mettre en fil d’attente les différentes feuilles de style et autres scripts.
Mettre en file d’attente les différents appels d’un thème enfant
Pour mettre en file d’attentes les différents appels qu’il est nécessaire d’utiliser créer un fichier « functions.php » dans le thème enfant.
<?php
// Active la fonction pour mettre en file d'attente les feuilles de style
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
// Met en file d'attente la feuille de style principale du parent
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
// Enregistre une feuille de style du thème enfant
wp_register_style('prism-style', get_stylesheet_directory_uri() . '/prism/prism.css');
// Met en file d'attente la feuille de style du thème enfant
wp_enqueue_style('prism-style');
}
// Active la fonction pourmettre en file d'attente les scripts
add_action('wp_enqueue_scripts', 'theme_enqueue_script');
function theme_enqueue_script(){
// Enregistre un script du thème enfant
wp_register_script('prism-js', get_stylesheet_directory_uri() . '/prism/prism.js');
// Met en file d'attente un script du thème enfant
wp_enqueue_script('prism-js');
}
Source article
- « Thèmes Enfant » : suivre ce lien.