Affichages des posts

  • Statut : non résolu
7 sujets de 16 à 22 (sur un total de 22)
  • Auteur
    Messages
  • #770961
    wasicu
    Membre
    Maître WordPress
    2753 contributions

    Ok. Il y aurait une option vu que l’on fait plus que tatonner avec les conditionnels et les query.

    Opter pour une page statique montrant les articles en page d’accueil, créer un modèle de page qui sera affecté à celle-ci, elle devra contenir le loop et le query des 3 articles par page. Ainsi aucune autre page ne sera concernée par cette option. Tentée ?

    #770968
    matbook
    Membre
    Padawan WordPress
    79 contributions

    Fait et fonctionne… et en ligne d’ici cette après midi !

    #770969
    docteurtube
    Participant
    Initié WordPress
    19 contributions
    wasicu wrote:
    Ok. Il y aurait une option vu que l’on fait plus que tatonner avec les conditionnels et les query.

    Opter pour une page statique montrant les articles en page d’accueil, créer un modèle de page qui sera affecté à celle-ci, elle devra contenir le loop et le query des 3 articles par page. Ainsi aucune autre page ne sera concernée par cette option. Tentée ?

    Ca m’a l’air d’une merveilleuse idée ! Par contre j’aurais besoin de tuyaux, je ne suis pas vraiment certaine de savoir précisément comment m’y prendre…

    #770970
    wasicu
    Membre
    Maître WordPress
    2753 contributions

    En premier lieu, il s’agit de créer une page nommée par exemple home.php

    au tout début de cette page, insérer le code suivant qui permet de faire de celle-ci un modèle de page.

    À la suite de code, insérer le code se trouvant dans l’index.php

    Ceci fait, insérer le code suivant :

    query, array(
                ‘paged’          => get_query_var(‘paged’),
                ‘posts_per_page’ => 3
            )));
        ?>

    Juste après

    Ensuite après le , insérer le code suivant qui affichera la pagination :

    max_num_pages > 1): ?>
            <div class="au choix">
    <ul id="au choix" class="au choix">
    		<li class="next-posts"><?php next_posts_link('<img src="/images/right.png" alt="Right" />‘) ?></li>
    		<li class="prev-posts"><?php previous_posts_link('<img src="/images/left.png" alt="Left" />‘) ?></li>
    </ul>
            </div>
        

    Enregistrer le fichier modifié.

    Si j’ai laissé des class au div de la pagination à l’ul et aux li, c’est que pour mon blog, cette navigation apparait 2 fois sur la page, avant les articles et après les articles, dans ce cas là on ne peut utiliser des id car elles ne doivent apparaitre qu’une fois sur la page, au contraire des classes qui peuvent être présentes plusieurs fois. J’ai aussi laissé les iamges dans <?php next_posts_link('Right‘) ?> et previous_posts parce qu’on peut remplacer les liens en texte par des images en procédant de cette façon, pour avoir du texte, vider les informations concernant les images entre (‘ et ‘). Les id et class sont là pour styler le tout en css.

    Ensuite, créer par l’admin de wordpress à pages – ajouter
    une page intitulée par exemple accueil et lui donner en modèle de page (colonne de droite) le modèle home.

    Aller ensuite dans réglages – lecture et cocher les options page d’accueil statique en donnant la page accueil pour la page d’accueil et la page accueil encore une fois pour la page des articles.

    Cela devrait fonctionner sans avoir d’impact sur les pages des catégories et autres.

    #770971
    Guy
    Participant
    Maître WordPress
    14833 contributions

    Je met mon grain de sel, mais je ne sais pas quelle est la solution.

    J’avais été confronté à cela et la solution de mettre ‘posts_per_page’ à une valeur ne fonctionnait que pour les premiers posts (en navigation). Il me semble que WordPress ne met pas à jour la variable globale max_num_pages et pire la recalcule à chaque changement de page en ne prenant pas en compte la nouvelle valeur de posts_per_page.

    Le résultat, c’est qu’au bout de x pages, il pense être à la fin et ne trouve plus rien, il devient impossible de visualiser les posts précedents.

    La solution que j’avais trouvé a été de redéfinir une requête avec WP_Query, de faire la loop avec cette nouvelle requête et de rétablir en fin de page après les menus de navigation les anciennes valeurs de wp_query.
    C’est du bricolage, mais cela fonctionnait.

    ça faisait quelque chose comme ça:

    Au debut du fichier avant tout menu de navigation.

    if ( is_home())
    {
    $OldQuery = $wp_query;
    $wp_query = new WP_Query();
    $wp_query->query(‘showposts=3&paged=’.$paged);
    }

    et à la fin après tout menu de navigation, toute requête:

    if ( is_home())
    {
    $wp_query = $OldQuery;
    }

    #770972
    docteurtube
    Participant
    Initié WordPress
    19 contributions
    Guy wrote:
    Je met mon grain de sel, mais je ne sais pas quelle est la solution.

    J’avais été confronté à cela et la solution de mettre ‘posts_per_page’ à une valeur ne fonctionnait que pour les premiers posts (en navigation). Il me semble que WordPress ne met pas à jour la variable globale max_num_pages et pire la recalcule à chaque changement de page en ne prenant pas en compte la nouvelle valeur de posts_per_page.

    Le résultat, c’est qu’au bout de x pages, il pense être à la fin et ne trouve plus rien, il devient impossible de visualiser les posts précedents.

    La solution que j’avais trouvé a été de redéfinir une requête avec WP_Query, de faire la loop avec cette nouvelle requête et de rétablir en fin de page après les menus de navigation les anciennes valeurs de wp_query.
    C’est du bricolage, mais cela fonctionnait.

    ça faisait quelque chose comme ça:

    Au debut du fichier avant tout menu de navigation.

    if ( is_home())
    {
    $OldQuery = $wp_query;
    $wp_query = new WP_Query();
    $wp_query->query(‘showposts=3&paged=’.$paged);
    }

    et à la fin après tout menu de navigation, toute requête:

    if ( is_home())
    {
    $wp_query = $OldQuery;
    }

    Youhouuu !

    Ça marche parfaitement !
    Merci !

    Du coup wasicu je n’ai pas essayé ta méthode, mais je la garde sous le coude, on ne sait jamais !

    Merci à tous, il ne me reste qu’une bricole à régler et mon site est près !

    #770973
    wasicu
    Membre
    Maître WordPress
    2753 contributions

    L’important c’est que ca marche et puis avec un grain de sel, ce n’est plus fade. 😉

7 sujets de 16 à 22 (sur un total de 22)
  • Le forum ‘Utilisation spécifique de WordPress’ est fermé à de nouveaux sujets et réponses.