Gérer une couleur de fond par catégorie
Résolu/Fermé
lynayanami
Messages postés
35
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
11 décembre 2017
-
Modifié par lynayanami le 22/05/2014 à 12:09
elgazar Messages postés 5841 Date d'inscription mercredi 30 octobre 2013 Statut Membre Dernière intervention 17 mars 2021 - 26 mai 2014 à 18:22
elgazar Messages postés 5841 Date d'inscription mercredi 30 octobre 2013 Statut Membre Dernière intervention 17 mars 2021 - 26 mai 2014 à 18:22
A voir également:
- Gérer une couleur de fond par catégorie
- Somme si couleur - Guide
- Excel couleur conditionnelle - Guide
- La boite a couleur - Télécharger - Divers Photo & Graphisme
- Comment mettre une vidéo en fond d'écran - Guide
- Changer la couleur de la barre des taches - Guide
12 réponses
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
Modifié par elgazar le 24/05/2014 à 17:15
Modifié par elgazar le 24/05/2014 à 17:15
tu tes compliques la vie, il faut utiliser les marqueurs conditionnels de wordpress et afficher la couleur de fond selon la catégorie affiché.
Copie ce code avant la balise <body> dans le fichier header.php du thème que tu utilises
maintenant ouvre le fichier css et ajoute ces lignes
Petites explications, le premier code dit que si c'est la catégorie 10 qui est affichée, la balise body aura l'id rouge (elle recherchera donc #rouge dans ton css), si c'est la catégorie 20, l'id de la balise body deviendra noir et pour toutes les autres catégories l'id est blanc.
Pour avoir autant de couleurs que de catégories, il suffit d'ajouter un
Pour trouver l'iddes catégories, il suffit d'aller articles=>catégories et de passer le curseur sur le nom d'une catégorie, l'id apparaitra en bas de la page
Copie ce code avant la balise <body> dans le fichier header.php du thème que tu utilises
<?php if(is_category('10') ):ensuite remplace la ligne juste en dessous
$bg=rouge;
elseif (is_category('20') ):
$bg=noir;
else :
$bg=blanc;
endif; ?>
<body <?php body_class(); ?>>par
<body id="<?php echo $bg;?>" <?php body_class(); ?>>
maintenant ouvre le fichier css et ajoute ces lignes
et c'est tout!!!
#rouge { background: #ff0000; }
#bleu{ background: #000; }
#blanc { background: #fff ; }
Petites explications, le premier code dit que si c'est la catégorie 10 qui est affichée, la balise body aura l'id rouge (elle recherchera donc #rouge dans ton css), si c'est la catégorie 20, l'id de la balise body deviendra noir et pour toutes les autres catégories l'id est blanc.
Pour avoir autant de couleurs que de catégories, il suffit d'ajouter un
elseif (is_category('lacategoriedetonchoix') ):puis d'ajouter l'entrée correspondante dans le fichier css
$bg=la couleurdetonchoix;
Pour trouver l'iddes catégories, il suffit d'aller articles=>catégories et de passer le curseur sur le nom d'une catégorie, l'id apparaitra en bas de la page
lynayanami
Messages postés
35
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
11 décembre 2017
1
26 mai 2014 à 13:13
26 mai 2014 à 13:13
Bonjour elzagar,
Merci beaucoup pour ta réponse mais je me trouve avec le même problème que précédemment : le fond est changé mais pas de manière aussi propre que quand je le fais directement dans Wordpress : je n'ai plus de marge entre ma page centrale et mon fond, et il reste un bandeau blanc en haut.
Voir ici : http://www.cuisiner-simple.fr/category/les-entrees-ou-aperitifs-sales
Donc ce que je voudrais c'est apprendre à gérer ces marges dans les styles, car là c'est pas joli joli :)
Merci beaucoup pour ta réponse mais je me trouve avec le même problème que précédemment : le fond est changé mais pas de manière aussi propre que quand je le fais directement dans Wordpress : je n'ai plus de marge entre ma page centrale et mon fond, et il reste un bandeau blanc en haut.
Voir ici : http://www.cuisiner-simple.fr/category/les-entrees-ou-aperitifs-sales
Donc ce que je voudrais c'est apprendre à gérer ces marges dans les styles, car là c'est pas joli joli :)
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
Modifié par elgazar le 26/05/2014 à 15:49
Modifié par elgazar le 26/05/2014 à 15:49
tu n'a pas de marge sur ton contenu, tu as juste l'impression qu'il y en a une quand tu as un fond blanc donc tu dois la mettre dans la div qui contient tout ton contenu, même chose pour le haut normalement le header est collé en haut donc soit tu as une div vide (mais qui a toujours une hauteur minimum) soit tu as un margin-top (ou un padding-top pour la div header) qui provoque ce décalage et l'apparition du fond blanc central
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
26 mai 2014 à 15:57
26 mai 2014 à 15:57
En fait je viens de regarder rapidement et je ne sais pas ce que tu as fait mais tu as surement mal bidouillé les codes css car sur mon wordpress de test, j'ai bien une marge interne et pas d'espace en haut.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lynayanami
Messages postés
35
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
11 décembre 2017
1
26 mai 2014 à 16:10
26 mai 2014 à 16:10
Non je n'ai rien bidouillé d'autre, je débute et c'est une des premières choses que j'ai commencé à "bidouiller" :)
J'utilise un thème enfant histoire de ne pas casser le thème principal, peut-être y a t-il d'autres éléments à reprendre ?
J'utilise un thème enfant histoire de ne pas casser le thème principal, peut-être y a t-il d'autres éléments à reprendre ?
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
Modifié par elgazar le 26/05/2014 à 16:31
Modifié par elgazar le 26/05/2014 à 16:31
je suis arrivé a reproduire ce que tu veux sans faire de thème enfant , sans toucher aux css existantes et en seulement quelques secondes de bidouille.
Utilise simplement le thème twentytwelve et suis le tuto
étape 1 : on va faire passer le menu horizontal sous ton image, ouvre le fichier index.php, , copie depuis < nav> jusqu'à </nav>, et mets les juste avant la balise </header> puis efface les anciennes lignes au dessus de l'image qui ne servent plus à rien
Maintenant tu as logiquement le nom de ton site et sa description puis l'image et enfin le menu horizontal
etape 2 : tu mets le code pour les couleurs par catégories
étape 3 : si tu utilises les mises a jour automatiques je te conseille de renommer le dossier twentytwelve puis de renommer le theme name qui apparait dans le fichier style.css puis d'activer a nouveau le thème cela évitera ainsi les mises a jour automatique qui te ferais perdre toutes les modifications
etape 4 tu as plus qu'a admirer ton site
Utilise simplement le thème twentytwelve et suis le tuto
étape 1 : on va faire passer le menu horizontal sous ton image, ouvre le fichier index.php, , copie depuis < nav> jusqu'à </nav>, et mets les juste avant la balise </header> puis efface les anciennes lignes au dessus de l'image qui ne servent plus à rien
Maintenant tu as logiquement le nom de ton site et sa description puis l'image et enfin le menu horizontal
etape 2 : tu mets le code pour les couleurs par catégories
étape 3 : si tu utilises les mises a jour automatiques je te conseille de renommer le dossier twentytwelve puis de renommer le theme name qui apparait dans le fichier style.css puis d'activer a nouveau le thème cela évitera ainsi les mises a jour automatique qui te ferais perdre toutes les modifications
etape 4 tu as plus qu'a admirer ton site
lynayanami
Messages postés
35
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
11 décembre 2017
1
26 mai 2014 à 16:35
26 mai 2014 à 16:35
C'est peut-être dans mon thème qu'il y a un problème : je n'ai pas de balise <nav> dans le fichier index.php, seulement ceci :
<?php twentytwelve_content_nav( 'nav-below' ); ?>
<?php twentytwelve_content_nav( 'nav-below' ); ?>
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
26 mai 2014 à 16:39
26 mai 2014 à 16:39
oups je me suis trompé en écrivant c'est dans le fichier header.php pas dans index.php
lynayanami
Messages postés
35
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
11 décembre 2017
1
26 mai 2014 à 16:45
26 mai 2014 à 16:45
Alors en attendant j'avais trouvé une solution alternative il faut comme tu le dis passer par le thème en ligne et là j'ai déclaré un fond. Et grâce au code que tu m'as donné ce fond peut ensuite être remplacé.
Voilà, mille mercis !
Voilà, mille mercis !
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
Modifié par elgazar le 26/05/2014 à 16:58
Modifié par elgazar le 26/05/2014 à 16:58
après rien ne t'empêche de mettre une image gridée pour encore mieux symboliser les continents au lieu de mettre un simple aplat de couleur, il suffit de mettre les css correspondants dans les div rouge, bleu, etc
exemple d'image gridée : casimages.com/img.php?i=140526050301482235.jpg
le but étant que le motif japonais soit juste a coté de ta div centrale ce qui est quand même mieux pour symboliser l'asie
exemple d'image gridée : casimages.com/img.php?i=140526050301482235.jpg
le but étant que le motif japonais soit juste a coté de ta div centrale ce qui est quand même mieux pour symboliser l'asie
lynayanami
Messages postés
35
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
11 décembre 2017
1
26 mai 2014 à 17:07
26 mai 2014 à 17:07
Tout à fait, je pense en fait gérer un bandeau par rubrique, avec un fond plus travaillé que ça :) Mais dans un premier temps j'allais au basique pour voir comment distinguer mes catégories, encore merci !
elgazar
Messages postés
5841
Date d'inscription
mercredi 30 octobre 2013
Statut
Membre
Dernière intervention
17 mars 2021
1 322
26 mai 2014 à 18:22
26 mai 2014 à 18:22
De rien !! Avec les marqueurs conditionnels de wordpress, tu as de quoi t'amuser puisque les possibilités sont vraiment très grandes pour tout personnaliser