lastArtList casse la pagination

croque-Odillecroque-Odille Member
janvier 2011 modifié dans Bogues
Bonjour,

un bug un peu étrange. Je travaille sur un thème pour PluXml et dans celui-ci je dois mettre lastArtList ailleurs que dans la sidebar. Le code est simplement :
<div class="last-article">
<h2>Derniers articles</h2>
<ul>
<?php $plxShow->lastArtList('<li class="#art_status"><a href="#art_url" title="#art_title">#art_title</a></li>'); ?>
</ul>
</div>
Le problème est que la pagination ne fonctionne plus : celle qui est affichée dans le page Catégorie et dans la page Tag est la même que celle de la Home. A savoir que si sur la Home j'ai une pagination sur 8 pages, j'en aurai également sur 8 pages dans Catégorie et Tag quand bien même je n'ai qu'un article dans une catégorie.

Si j'enlève le code lastArtList ci-dessus, tout revient à la normale.

Si quelqu'un peut me sortir de là, ça serait vraiment super. Je pensais mon thème presque terminé, mais là il est inutilisable :/

Merci

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour croque-Odille

    Peux-tu me dire où tu as mis l'appel dans lastArtList() stp ?

    Merci

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • croque-Odillecroque-Odille Member
    janvier 2011 modifié
    Ah oui, ça pourrait aider :P

    Je l'ai mis dans le header.
  • Ah c'est pas fini ! Un autre bug, avec lastComList cette fois-ci. Une fois mis dans le header il y a un soucis avec les commentaires. Si un article n'a pas de commentaire, alors il y a un bug et la page n'est pas traitée entièrement.

    Voilà ce que les logs me sortent à cette occasion :
    PHP Fatal error:  Call to a member function loop() on a non-object in /home/www/test/themes/devtheme/commentaires.php on line 6
    
    Je n'ai pas touché au fichier commentaire.php
  • Bonsoir,

    Réponse dans ce sujet ;)
  • StéphaneStéphane Member, Former PluXml Project Manager
    Pour le bug avec lastArtList, j'ai pu le reproduire. Y a plus qu'à trouvé la solution

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bon voilà peut-être la solution

    Dans le fichier core/lib/class.plx.show.php, dans la fonction lastArtList

    remplace
    $plxGlob_arts = plxGlob::getInstance(PLX_ROOT.$this->plxMotor->aConf['racine_articles']);
    
    par
    $plxGlob_arts = clone $this->plxMotor->plxGlob_arts;
    

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Merci à vous deux.

    Je n'ai pas trop envie de toucher au core de PluXml, si je commence bidouiller là-dedans, ça va être trop pénible à maintenir par la suite.

    Je vais faire autrement.
  • StéphaneStéphane Member, Former PluXml Project Manager
    tu peux faire cette modif. je l'ai reporté dans la prochaine version. donc de ce coté tu ne seras pas impacté par la mise à jour

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Ok, c'est nikel :-)

    J'ai testé et ça fonctionne aussi de mon côté.
Connectez-vous ou Inscrivez-vous pour répondre.