[Résolu] query_posts() changer la couleur des catégories (Créer un compte)

  • Statut : non résolu
8 sujets de 1 à 8 (sur un total de 8)
  • Auteur
    Messages
  • #520491
    metachess
    Membre
    Initié WordPress
    4 contributions

    Bonjour,

    Depuis quelques semaines, j’ utilise wordpress pour réaliser mon site et je suis débutant en php.

    Je souhaiterais afficher dans une page tous les articles récents en ordre chronologique dans un cadre coloré cependant la couleur de fond du cadre dépend de la categorie de l’ article. Depuis pas mal de jours, j’ ai cherché et essayé differentes methodes mais en vain.

    Ex: Schema de lì ordre d’ affichage des articles dans la page

    Dates de l’art. …………….Catégories………………Couleurs de fond du cadre
    1 Février…………………..Photo…………………………………Noire
    30 Janvier………………….Video………………………………..Jaune
    25 Janvier…………………Musique……………………………..Bleu
    20 Janvier…………………Musique……………………………..Bleu
    15 Janvier…………………Video………………………………..Jaune

    Pour le moment, je suis arrivé à afficher tous les articles en ordre chronologique dans un cadre de couleur de fond identique pour chaque catégorie avec la function query_posts()….

    La fonction actuel que j’ utilise et que je souhaiterais modifier pour obtenir le résultat que j’ ai décrit au-dessus:

    <?php

    function afficher_les _articles()/**
    * Afficher tout les articles
    */
    {
    /**La requete*/
    $req=query_posts('order=DESC');
    /***La boucle*/
    if ( have_posts() ) : while ( have_posts() ) : the_post();
    ?>
    /**Mise en page*/
    <div class="cadre ">
    <div class="datafloat"> <span class="dati"> <?php the_time('j F Y'); ?> </span><br/><span class="commentaire"> <?php comments_popup_link('0', '1', '%'); ?> </span> </div>
    <h3> <?php echo the_title(); ;?></h3>
    <span class="categorie"> > <?php the_category(', '); ?></span>
    <p>
    <?php echo the_content();?></p><?php edit_post_link('Editer', ' | ', ''); ?><span class="datafloat"><?php echo new_excerpt_more($more) ; ?></span>
    </div>
    /**Fin de la boucle*/
    <?php endwhile; else:
    endif;
    wp_reset_query();
    }

    Plusieur fois, j’ ai essayé d’ ajouter des conditions ou faire plusieurs boucles. Le code a bien affiché les differentes couleurs de fonds pour chaques catégories mais cependant les articles n’ étaient pas affichés en ordre chronologique mais par catégorie.

    Merci d’ avance pour votre aide!

    #879062
    ouistiti.net
    Participant
    Maître WordPress
    1879 contributions

    Je ne suis pas développeuse et je connais juste la solution d’attribuer une feuille de style à chaque catégorie (je ne pense pas que cela s’applique à votre demande).

    Par contre pourquoi ne pas utiliser la fonction body_class() comme il est d’écrit dans ce topic ….

    http://www.wordpress-fr.net/support/viewtopic.php?id=48138

    #879063
    Guy
    Participant
    Maître WordPress
    14817 contributions

    Tu peux te servir du slug de la première catégorie pour ajouter des classes css, dans l’esprit cela ferait cela


    Attention ce mise en page ne devrait pas être là dans ton code:
    /**Mise en page*/

    <div class="cadre cat-classe-slug; ?> »>

    #879064
    metachess
    Membre
    Initié WordPress
    4 contributions

    Merci pour vos réponses 🙂
    Ouistit tu as trés bien compris ce que je voulais faire… merci pour le lien
    Guy fort interessant ces variables… 😉
    Je vais essayer tous ça et essayer bien comprendre comment fonctione le slug.
    Merci encore

    #879065
    metachess
    Membre
    Initié WordPress
    4 contributions

    Merci beaucoup Guy pour ton aide claire et concise. Maintenant, la mise en page que je souhaitais afficher fonctione nickel. 🙂 😉

    #879066
    Guy
    Participant
    Maître WordPress
    14817 contributions

    Parfait 🙂

    La prochaine fois, ouvres ton fil de discussion dans le support de WordPress, ici c’est le support de WordPress MU ou WordPress Multi Site

    #879067
    ouistiti.net
    Participant
    Maître WordPress
    1879 contributions

    Bon ben moi qui pensais apprendre quelque chose avec ce topic (j’en suis qu’à la théorie non à la pratique), la solution a été trop vite trouvée par metachess (Gens qui pleurent, gens qui rient 😉 )

    Je me doutais bien qu’il fallait appeler une class par catégorie (non un fichier style) dans la boucle avec son ID (slug).

    Ce que je ne comprends pas vraiment c’est le commentaire qui dit: La mise en page ne doit pas se trouver dans ce fichier.

    Est-ce qu’il faut mettre une partie du code dans le fichier functions.php (ça n’a pas de sens non?) Alors dans quel fichier? vu que la boucle sert à afficher le tableau des commentaires par article chronologique et un cadre de couleur de fond identique pour chaque catégorie (mise en page) dans cette page bien précise ( non plus dans le fichier category.php ).

    A vrai dire je ne sais même pas si il faut créer un nouveau modèle de page. Bref! Je ne capte pas le commentaire… 😗

    #879068
    ouistiti.net
    Participant
    Maître WordPress
    1879 contributions

    Je retire ma question, j’ai compris (j’ai lu trop vite)

    Attention cet mise en page ne devrait pas être là dans ton code:

    J’ai interprété dans le fichier

    et en ce qui concerne le modèle de page tout dépend du contexte. 😋

8 sujets de 1 à 8 (sur un total de 8)
  • Vous devez être connecté pour répondre à ce sujet.