Lien CSS Wordpress 4.1.1

Par hatfab, il y a 11 ans


Bonjour, j'ai un problème avec le CSS dans le (vieux) tuto "Créer un site Wordpress depuis une maquette HTML". Le code décrit dans le tuto, récupéré de Twentyten, et qui sert à lier le CSS dans le header n'existe pas dans les nouveaux thème de Worpress 4.1.1. Je ne trouve aucune ligne qui pourrait me faire penser à un appel de CSS. Quelqu'un connait la nouvelle procédure ?
Merci beaucoup !!

17 réponses

hatfab, il y a 11 ans

Salut Metylene,
Est-ce que c'est

wp_enqueue_style( 'style.css', get_stylesheet_uri() );

si ma feuille de style se nomme style.css ou simplement style ?

Merci

skp, il y a 11 ans

Bonjour, moi personnellement je fais comme ça :

//dans le fichier functions.php du theme function theme_scripts() { wp_enqueue_style("theme-style", get_stylesheet_uri()); } add_action("wp_enqueue_scripts", "theme_scripts");

"get_stylesheet_uri()" correspond au fichier "style.css" à la racine de ton thème

hatfab, il y a 11 ans

Bonsoir, et si on met directement ""get_stylesheet_uri()" " dans le header ça marche aussi ?

skp, il y a 11 ans

Je dirais que oui, mais faut essayer.

hatfab, il y a 11 ans

Je viens d'essayer, ça marche pas. Le fichier style.css doit bien est bien au même niveau que les autes pages c'est ça ?

skp, il y a 11 ans

Oui à la racine de ton thème.
Tu peux essayer ça :

<link rel="stylesheet" type="text/css" href="<?php bloginfo( 'stylesheet_url' ); ?>"/>
hatfab, il y a 11 ans

Ça marche pas non plus; Ce qui m'étonne c'est que dans le header.php d'un thème standard Wordpress, genre Twentyfourteen il n'y a rien qui ressemble à ça… regarde :

<?php /** * The Header for our theme * * Displays all of the <head> section and everything up till <div id="main"> * * @package WordPress * @subpackage Twenty_Fourteen * @since Twenty Fourteen 1.0 */ ?><!DOCTYPE html> <!--[if IE 7]> <html class="ie ie7" <?php language_attributes(); ?>> <![endif]--> <!--[if IE 8]> <html class="ie ie8" <?php language_attributes(); ?>> <![endif]--> <!--[if !(IE 7) & !(IE 8)]><!--> <html <?php language_attributes(); ?>> <!--<![endif]--> <head> <meta charset="<?php bloginfo( 'charset' ); ?>"> <meta name="viewport" content="width=device-width"> <title><?php wp_title( '|', true, 'right' ); ?></title> <link rel="profile" href="http://gmpg.org/xfn/11"> <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>"> <!--[if lt IE 9]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js"></script> <![endif]--> <?php wp_head(); ?> </head>
skp, il y a 11 ans

Le thème "Twentyfourteen" utilise ma première solution. Si tu ouvre le fichier functions.php et tu recherches "twentyfourteen_scripts()" tu vas tomber sur quelle que chose de similaire à mon premier exemple.

hatfab, il y a 11 ans

J'ai effectivement trouvé ce que tu dis. J'ai fai ça :

<?php function olga_scripts() { wp_enqueue_style( 'olga-style', get_stylesheet_uri() ); } add_action("wp_enqueue_scripts", "olga_scripts"); ?>

Mais ça marche toujours pas :(

hatfab, il y a 11 ans

Le fichier "functions.php" est loadé automatiquement ?

skp, il y a 11 ans

Oui il est chargé automatiquement. Es-tu sûr que ton "style.css" se trouve au même niveau que ton index.php, header.php, etc. et que tu n'as pas fait de faute de frappe sur "style.css".

J'ai des connaissances de base pour WP, je ne pourrais pas plus d'aider.

hatfab, il y a 11 ans

Oui, tout est là, et bien nommé…

Je vais continuer de chercher, merci de ton aide en tout cas…

Metylene, il y a 11 ans

Salut !
J'ai commencé à manier Wordpress que récemment et j'ai aussi eu un peu de mal au début.

Est-ce que les fonctions <?php wp_head(); ?> et <?php wp_footer(); ?> sont présentes dans ton fichier header.php et footer.php ? Elles sont importantes car elles permettent de charger les fonctions, scripts ...

Perso dans mon fichier de fonction j'ai placé ça pour charger mon style.css :
wp_enqueue_style( 'style', get_stylesheet_uri() );'style' est le nom du fichier css à charger.

hatfab, il y a 11 ans

Voilà, j'ai réussi grâce a vos indication, et en fait, il manquait le <?php get_header(); ?> et le get_footer(); ?> dans l'index.
Merci de votre aide !

Metylene, il y a 11 ans

Le nom de mon dossier est style, son extenction est .css, il faut que tu laisse 'style'.

<?php function olga_scripts() { wp_enqueue_style( 'olga-style', get_stylesheet_uri() ); } add_action("wp_enqueue_scripts", "olga_scripts"); ?>

Mais si tu as ça déjà, il faut que tu remplace 'olga-style' par 'style'

hatfab, il y a 11 ans

Oui, j'ai fini par comprendre, merci, ça fonctionne ! :)

Metylene, il y a 11 ans

Ah oui je n'ai pas vu ton message validé :)