[plugin] plxMyPager : modifie et améliore les liens de navigations

2

Réponses

  • HamtaroHamtaro Member
    août 2013 modifié
    Bonjour

    Une petite remontée de bug chez moi :
    - arrivé à la page 10 à 19, les liens renvoient vers les numéros de pages sans la dizaine... C'est à dire 0 à 9
    Tout rentre dans l'ordre après le numéro 19...

    Est-ce seulement le cas chez moi, est ce que j'ai trop bidouillé à coup de plugins et codes mon Pluxml ? :p
  • Jerry WhamJerry Wham Member
    novembre 2013 modifié
    Petite correction que j'apporterais. Après la ligne 67, j'ajouterais :
    if ($i == 1) { $url = substr($url,0, -1);}
    
    afin de supprimer le slash de fin.
    Je confirme le bug d'Hamtaro. J'ai la même chose. Le problème vient de la ligne 67. Le str_replace remplace le début du nombre (page1).

    La solution : remplacer la ligne 67 par :
    $url = preg_replace("%page1$%", "",$url);
    
  • Hello,

    Please excuse me, I do not speak French and my English is not very good.
    I hope I can explain my problem understandable.

    Recently, I use PluXml 5.3 and the plugin MyPager. And I have the same problem with MyPager that Hamtaro describes in post # 32.
    The proposal by Jerry Wham has not helped.

    Is there now a solution or has anyone a hint what I can do?

    Regards Bechti
  • bg62bg62 Member
    bonjour;
    sous PluXml 5.1.3
    le plugin me pose problèmes ...
    si je prends la 'home' .... jusqu'à la page 9 tout va bien ' /index.php?page9 ' mais si je clique sur le n°10... je me retrouve sur ' /0 ' carrément, , le n° 11 envoie également sur ' /1 ' etc etc ...
    J'ai repris la dernière version, j'ai texté avec ceci :
    [== HTML ==]
    	<p id="pagination"><?php $plxShow->pagination(); ?></p>
    
    également avec ceci:
    [== HTML ==]
    	<?php $plxShow->pagination(); ?>
    
    rien à faire ^^

    si je me mets, manuellement dans l'url sur ' /index.php?page10 ' ça recoince pour '11'
    Que se pastis là ???
    @+
  • bg62bg62 Member
    et finalement, si la solution réside dans la correction d'un bug, que doit-on mettre exactement à la place de ceci :
    [== PHP ==]
    		for($i=$start;$i<=$stop;$i++) {
    			$url = $this->plxMotor->urlRewrite("?".$arg_url."page".$i);
    			$url = str_replace("index.php?page1", "",$url);
    			$url = str_replace("page1", "",$url);
    			if($i==$this->plxMotor->page)
    				echo "<span class=\"p_current\">".$i."</span>";
    			else
    				echo "<span class=\"p_page\"><a href=\"".$url."\" title=\"".$i."\">".$i."</a></span>";
    		}
    
    j'ai essayé les deux proposées mais j'en suis toujours au même point ...
    @+
  • Bonjour,
    essaye avec ceci :
    [== PHP ==]
    for($i=$start;$i<=$stop;$i++) {
        $url = $this->plxMotor->urlRewrite("?".$arg_url."page".$i);
        $url = preg_replace_callback(
            "`(?:index\.php\?)?page([1-9][0-9]+)`",
            create_function(
                "\$matches",
                "return (\$matches[1] == \"1\") ? \"\" : \$matches[0];"   
            ),
            $url
       );
       if($i==$this->plxMotor->page)
           echo "<span class=\"p_current\">".$i."</span>";
       else
           echo "<span class=\"p_page\"><a href=\"".$url."\" title=\"".$i."\">".$i."</a></span>";
    }
    
    Cordialement
  • bg62bg62 Member
    YES !!! nickel et grands mercis, en local ok de suite, en ligne ... le temps de latence de hébergeur et de ces ^^ de cookies, et ça fonctionne ... OUF !!
    comme quoi, quand on sait coder, quand on sait faire, quand on maîtrise = + qu'une bonne chose :)
    @Stéphane : as-tu mis à jour ???
    ce serait bien pour tout le monde ...
    @+
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour
    Si vous utilisez le plugin plxMyBetterUrls je crois me souvenir que le problème vient de ce plugin.
    Essayer en mettant à jour plxMyBetterUrls à partir de cette adresse (sans faire de modif de code dans le plugin de pagination)
    https://github.com/Pluxopolis/plxMyBetterUrls/archive/1.4.zip

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • bg62bg62 Member
    Stéphane a écrit:
    Bonjour
    Si vous utilisez le plugin plxMyBetterUrls je crois me souvenir que le problème vient de ce plugin.
    Essayer en mettant à jour plxMyBetterUrls à partir de cette adresse (sans faire de modif de code dans le plugin de pagination)
    https://github.com/Pluxopolis/plxMyBetterUrls/archive/1.4.zip
    ;)
    pas tout compris là .. la relation avec 'MyPager' ...
    @+
  • StéphaneStéphane Member, Former PluXml Project Manager
    plxMyBetterUrls réécrit les urls créées par MyPager (mais mal lorsqu'on dépasse un certain nombre de page)

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • bg62bg62 Member
    Stéphane a écrit:
    plxMyBetterUrls réécrit les urls créées par MyPager (mais mal lorsqu'on dépasse un certain nombre de page)
    ok, moi je te demandais simplement si tu avais eu le temps de mettre ' MyPager ' à jour, en fonction de ces corrections ... :)
    @+
  • StéphaneStéphane Member, Former PluXml Project Manager
    Non pas eu le temps. Faut d'abord que je valide la modif

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • StéphaneStéphane Member, Former PluXml Project Manager
    ## Version 1.2.1 (28/08/2014) ##
    [+] Ajout de rel="prev" et rel="next" dans les liens précédent et suivant (contribution Etienne R.)
    [+] Ajout traduction en occitant (contribution Rubén)

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • StéphaneStéphane Member, Former PluXml Project Manager
    ## Version 1.2.2 (13/05/2015) ##
    [+] Compatibilité PluXml 5.4

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Bonjour,

    est-il possible d'avoir l'équivalent de MyPager (en plugin ou en core) pour la partie administration (plus particulièrement pour les articles et commentaires) ?

    Parce que même en affichant 99 commentaires par page, ça me fait beaucoup de clic pour aller sur la page 25 [page 1 sur 25 suivante»] :D

    (l'on me rétorquera que je pourrai aussi modifier directement l'url, mais c'est moins fun)
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour kowalsky

    Très bonne remarque. Je me suis toujours dit qu'il fallait revoir la pagination coté admin car c'est vrai que c'est un peu laborieux.
    Je me le suis noté cette fois-ci pour ne plus l'oublier
    https://github.com/pluxml/PluXml/issues/114

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Est-il possible d'améliorer l'affichage du plugin. On a l'impression de lire 1 page sur 31 alors que c'est 1 page sur 3.
    Ajoutez un espace . voir image ci-dessous
    mypager.png
    Merci
  • jol5926 a écrit:
    Est-il possible d'améliorer l'affichage du plugin. On a l'impression de lire 1 page sur 31 alors que c'est 1 page sur 3.
    Ajoutez un espace . voir image ci-dessous
    http://www.jose.monespace.net/mypager.png
    Merci

    Bonjour,
    pas de réponse ??
    pas de solutions ??

    Merci
  • StéphaneStéphane Member, Former PluXml Project Manager
    @jol5926

    à rajouter dans le fichier css de ton thème
    .p_current {
      padding: 10px;
    }
    .p_page {
      padding-right: 10px;
    }
    

    tu disposes de toutes ces classes pour changer le comportement visuel

    .p_first
    .p_prev
    .p_current
    .p_next
    .p_last
    .p_page

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Stéphane a écrit:
    @jol5926

    à rajouter dans le fichier css de ton thème
    .p_current {
      padding: 10px;
    }
    .p_page {
      padding-right: 10px;
    }
    

    tu disposes de toutes ces classes pour changer le comportement visuel

    .p_first
    .p_prev
    .p_current
    .p_next
    .p_last
    .p_page

    Merci !
  • Bonjour,

    il y a un bug pour les pages comprises entre 10 et 19 à cause de la règle de ré-écriture des urls ligne 66 et 67.

    Voici un patch qui fonctionne bien :
    diff -u plxMyPager.php ~/Sites/scasb/plugins/plxMyPager/plxMyPager.php
    [== Indéfini ==]
    --- plxMyPager.php	2015-05-13 04:30:50.000000000 +0200
    +++ /Users/gerald/Sites/scasb/plugins/plxMyPager/plxMyPager.php	2015-10-17 16:58:03.000000000 +0200
    @@ -62,9 +62,7 @@
     			echo "<span class=\"p_page\">...</span>";
     
     		for($i=$start;$i<=$stop;$i++) {
    -			$url = $this->plxMotor->urlRewrite("?".$arg_url."page".$i);
    -			$url = str_replace("index.php?page1", "",$url);
    -			$url = str_replace("page1", "",$url);
    +			$url = $this->plxMotor->urlRewrite("?".$arg_url.($i<=1?"":"page".$i));
     			if($i==$this->plxMotor->page)
     				echo "<span class=\"p_current\">".$i."</span>";
     			else
    @@ -87,4 +85,4 @@
     	}
     
     }
    -?>
    \ No newline at end of file
    +?>
    
  • StéphaneStéphane Member, Former PluXml Project Manager
    @gegeweb: merci pour le correctif. Je mets à jour le plugin dès que possible

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • gegewebgegeweb Member
    octobre 2015 modifié
    Stéphane a écrit:
    @gegeweb: merci pour le correctif. Je mets à jour le plugin dès que possible

    De rien,

    je peux faire un zip, c'est déjà modifié en prod sur le site du SCASB où j'ai repris le principe pour la navigation dans les groupes de pages statiques.
    Pas encore sur mon blog perso…

    plxmypager.png

    EDIT: y'a pas un Github ou équivalent ?

    EDIT (bis) : je l'ai mis là en attendant la mise à jour officielle : plxMyPager-1.2.3

    Comme d'hab', répertoire à renommer en plxMyPager avant de transférer dans le répertoire des plugins.
  • Au fait… on ne peut pas personnaliser le libellé des différents liens suivant, précédents… Ça pourrait être sympa.
    D'autant plus qu'il n'y a pas non plus d'option pour dans les paramètres d'affichage de pluXML.
  • PPmarcelPPmarcel Member
    mars 2016 modifié
    Bonjour,

    Je viens de me rendre compte que j'avais le même problème de réécriture d'URL passé la page 9 de mon site.
    Gegeweb : ton fix marche bien. Le plugin est bien sur github, pour le cas où tu souhaiterai proposer ton fix:

    https://github.com/Pluxopolis/plxMyPager

    Stéphane: ce sont les cordonniers les plus mal chaussés, pluxopolis traîne toujours ce petit effet de bord. :)
    Note: je sais que tu es occupé par la version 5.5, pas d'urgence à priori.
  • StéphaneStéphane Member, Former PluXml Project Manager
    ## Version 1.2.3 (11/03/2016) ##
    BUG Erreur pagination au delà de la page 9 (contribution gegeweb)

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • StéphaneStéphane Member, Former PluXml Project Manager
    @PPMarcel: merci, j'avais complètement zappé de mettre à jour le plugin. voilà qui est fait.

    @gegeweb: encore merci pour la solution

    Et sinon voilà une petite astuce css pour changé le libellé des liens avec du simple code css à mettre dans la feuille de style de son thème.

    Exemple pour le lien de la page suivante où on remplace le libellé "Suivante" par "Page suivante".
    .p_next a {
    	visibility: hidden;
    	word-spacing:-999px;
    	letter-spacing: -999px; 
    }
    
    .p_next  a:after {
    	content: "Page suivante";
    	visibility: visible;
    	word-spacing:normal;
    	letter-spacing:normal; 
    	background-color: inherit;
    	color: inherit;
    	padding: 8px;
    }
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Très bonne astuce ! Elle mériterait d'être embarqué ultérieurement dans la doc du plugin pour faciliter son exploitation.
  • PPmarcelPPmarcel Member
    septembre 2016 modifié
    Je relève une anomalie couplée avec myBetterUrl.

    Lorsque l'on navigue entre les pages d'un tag ou d'une catégorie et que l'on re-clique sur la page 1, l'URL aura un slash en fin d'URL.

    Avec les tag on peut avoir ou ne pas avoir un slash, ça s'affiche. Ex:
    - http://maoli.fr/tag/parcs/
    - http://maoli.fr/tag/parcs

    En revanche pluxml sort :
    - un 404 si une catégorie finie par un slash : http://maoli.fr/categorie/ile-de-france/
    - un 200 si il n'y en a pas : http://maoli.fr/categorie/ile-de-france

    Si MyBetterUrl est désactivé, les catégories fonctionnent avec ou sans slash.
    Je n'ai plus les archives sur mon site mais il se peut qu'elles soient aussi touchées.

    Au lieu de forcer MyBetterUrl à accepter le duplicate content, je suggère de modifier my pager afin de retirer le slash de fin sur les liens de la page 1.
    Ce serait cohérent avec les liens de génère PluXML par défaut, sans slash.
  • Bonjour,

    Lorsque l'on navigue entre les pages et que l'on re-clique sur la page 1, l'URL aura un slash en fin d'URL et une page s'affiche "page non trouvée ou n'existe pas".
    Cela se produit uniquement lorsqu'on clique sur page 1 et non pas si on clique sur précédent.
    J'utilise le plugin MyBetterUrl

    Merci
Connectez-vous ou Inscrivez-vous pour répondre.