WordPress : Comment modifier layout.css dans le thème enfant

Publié par Jean-Michel le

Je travaille à l’intérieur du thème enfant. Mon style.cssfichier dans le thème enfant fonctionne bien mais mon layout.cssfichier ne fonctionne pas dans le thème enfant.

La structure de répertoire pour layout.cssle thème parent estmytheme/css/layout.css

J’ai conservé la même structure de répertoires dans le thème enfant qui estmychildtheme/css/layout.css

Mais quand j’écris un code dans child layout.css, ça ne marche pas.

Le navigateur sélectionne le code du thème parent (layout.css )

Veuillez me faire savoir ce que je dois faire pour que mon layout.cssthème enfant fonctionne correctement.

Solution n°1 trouvée

La meilleure solution est de s’assurer que le style.css de votre thème enfant est chargé après le layout.css du thème parent. Ensuite, vous pouvez facilement remplacer les petites choses dont vous avez besoin de la manière habituelle via style.css

Voici un code qui fonctionne pour les produits WooThemes, qui garantit que le css de votre thème enfant est toujours chargé après le layout.css de l’enfant parent

Il appartient au functions.php du thème enfant

function use_parent_theme_stylesheet() {
    // Use the parent theme's stylesheet
    return get_template_directory_uri() . '/style.css';
}

function my_theme_styles() {
    $themeVersion = wp_get_theme()->get('Version');

    // Enqueue our style.css with our own version
    wp_enqueue_style('child-theme-style', get_stylesheet_directory_uri() . '/style.css',
        array('woo-layout'), $themeVersion);
}

// Filter get_stylesheet_uri() to return the parent theme's stylesheet 
add_filter('stylesheet_uri', 'use_parent_theme_stylesheet');

// Enqueue this theme's scripts and styles (after parent theme)
add_action('wp_enqueue_scripts', 'my_theme_styles', 20);   

Solution n°2 trouvée

Une feuille de style est différente d’un fichier php de thème normal. Avec un tel fichier php, il suffit de créer un fichier du même nom dans votre thème, et WP saura l’utiliser. Avec css, cependant, il ne suffit pas de créer un fichier avec le même nom. Vous devez l’inclure explicitement dans les pages que vous souhaitez.

La meilleure façon de le faire serait d’utiliser la fonction wp_enqueue_style dans le function.phpfichier de votre thème enfant. Voici comment procéder compte tenu de la structure de répertoires que vous avez décrite :

 <?php wp_enqueue_style( 'child-theme-layout', get_stylesheet_directory_uri().'/css/layout.css' ); ?>

Solution n°3 trouvée

Vous devez inclure le fichier layout.css dans votre thème enfant. Pour des informations plus détaillées, vous pouvez jeter un œil ici :

http://codex.wordpress.org/Function_Reference/wp_enqueue_style

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *