Thème vingt-quinze : Personnaliser le jeu de couleurs
-
29-09-2020 - |
Question
Je souhaite ajouter mon propre schéma de couleurs à mon thème enfant Twenty Fifteen afin qu'il puisse être modifié dans le panneau d'administration.D'après ce que j'ai compris, c'est la section pertinente : wp-content/themes/twentyfifteen/inc/customizer.php
(code ci-dessous).Marron est l'option que j'ai ajoutée (deuxième palette de couleurs dans le code).
Le jeu de couleurs n'apparaissait pas dans le panneau d'administration (Apparence-Personnaliser-Couleurs).Qu'est-ce que je fais mal?
function twentyfifteen_get_color_schemes() {
return apply_filters( 'twentyfifteen_color_schemes', array(
'default' => array(
'label' => __( 'Default', 'twentyfifteen' ),
'colors' => array(
'#f1f1f1',
'#ffffff',
'#ffffff',
'#333333',
'#333333',
'#f7f7f7',
),
),
'maroon' => array(
'label' => __( 'maroon', 'twentyfifteen' ),
'colors' => array(
'#f1f1f1',
'#C32148',
'#ffffff',
'#333333',
'#333333',
'#f7f7f7',
),
),
'dark' => array(
'label' => __( 'Dark', 'twentyfifteen' ),
'colors' => array(
'#111111',
'#202020',
'#202020',
'#bebebe',
'#bebebe',
'#1b1b1b',
),
),
'yellow' => array(
'label' => __( 'Yellow', 'twentyfifteen' ),
'colors' => array(
'#f4ca16',
'#ffdf00',
'#ffffff',
'#111111',
'#111111',
'#f1f1f1',
),
),
'pink' => array(
'label' => __( 'Pink', 'twentyfifteen' ),
'colors' => array(
'#ffe5d1',
'#e53b51',
'#ffffff',
'#352712',
'#ffffff',
'#f1f1f1',
),
),
'purple' => array(
'label' => __( 'Purple', 'twentyfifteen' ),
'colors' => array(
'#674970',
'#2e2256',
'#ffffff',
'#2e2256',
'#ffffff',
'#f1f1f1',
),
),
'blue' => array(
'label' => __( 'Blue', 'twentyfifteen' ),
'colors' => array(
'#e9f2f9',
'#55c3dc',
'#ffffff',
'#22313f',
'#ffffff',
'#f1f1f1',
),
),
) );
}
La solution
Il semble que vous modifiez directement la fonction twentyfifteen_get_color_schemes()
sur le thème parent ou que vous la redéclariez sur votre thème enfant.Vous devez éviter les deux cas.
Dans le code original de vingt quinze peut voir ceci:
apply_filters( 'twentyfifteen_color_schemes', array(.....) );
Cela signifie que vous pouvez créer un filtre pour ajouter des schémas de couleurs supplémentaires de cette manière :
add_filter('twentyfifteen_color_schemes', 'my_custom_color_schemes');
function my_custom_color_schemes( $schemes ) {
$schemes['maroon'] = array(
'label' => __( 'Maroon', 'twentyfifteen' ),
'colors' => array(
'#f1f1f1',
'#C32148',
'#ffffff',
'#333333',
'#333333',
'#f7f7f7',
),
);
return $schemes;
}
Ajoutez ce code dans le fichier functions.php de votre thème enfant ou dans un fichier de plugin.