[Résolu] boutons pour article suivant/precédent
Bonjour,
J'ai commencé à créer une fonction pour pluxml 5.0.2 qui affiche dans les page article des liens vers l'article précédent et suivant. Etant débutant en 'codage', le voici :
J'ai commencé à créer une fonction pour pluxml 5.0.2 qui affiche dans les page article des liens vers l'article précédent et suivant. Etant débutant en 'codage', le voici :
/**
* Méthode qui affiche dans l'article un lien vers le précédent et suivant article
* Encore expérimentale et buggé :)
* @scope global
* @author Deevad, inspiré et copier coller depuis d'autres codes dans Plx.show
**/
public function Navigation() {
# On calcul l'ID en cours , puis on génère les ID +1 et -1
$id = intval($this->plxMotor->plxRecord_arts->f('numero'));
$next_page = intval($this->plxMotor->plxRecord_arts->f('numero'))+1;
$prev_page = intval($this->plxMotor->plxRecord_arts->f('numero'))-1;
# On génère les URLs
$p_url = $this->plxMotor->urlRewrite('?'.$arg_url.'article'.$prev_page.'/'); # Page precedente
$n_url = $this->plxMotor->urlRewrite('?'.$arg_url.'article'.$next_page.'/'); # Page suivante
# On effectue l'affichage
echo '<a href="'.$p_url.'" title="Page précédente">< précédente</a> |';
echo '<a href="'.$n_url.'" title="Page suivante">suivante ></a>';
}
Ca fonctionne mais j'ai des BUGs ; nottament si la chaine des ID d'article est brisé ou si c'est non chronologique. C'est sur que se baser sur l'ID n'est pas la bonne méthode, mais c'est fait avec ce que j'ai pu comprendre. Merci si certains d'entre vous peuvent me passer un coup de main. Merci d'avance. Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Voilà ce que je te propose (code à rajouter dans le fichier core/lib/class.plxshow.php)
ajoute dans le fichier article.php de theme, là où tu veux voir apparaitre les liens Précedent/Suivant
tu disposes des classes css .artPrevNext, .artPrev, .artNext pour personnaliser l'affichage dans le fichier style.css de ton thème.
La fonction $plxShow->artPrevNext accèpte 2 paramètres afin de personnaliser le titre des liens Précedent/Suivant
Tu peux par exemple l'appeler de cette autre façon:
La fonction tient compte de l'ordre d'affichage paramétré dans l'administration (options d'affichage/Tri des articles). Le tri se fait donc par date.
Le code est pleinement optimisé car il tire profit des améliorations apportées dans la gestion des fichiers xml depuis la version 5 de PluXml.
je n'ai pas fait un debug et des tests poussés. Donc ne pas hésiter à remonter les éventuels problèmes.
Compatibilité: PluXml 5.+
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
C'est noël pour moi et mes facultés de codeur. D'ailleurs , en bon échange si besoin d'un dessin en retour ; je suis là.
Je vais pouvoir faire des boutons suivant et précédent pour mes dessins ; ex: http://www.davidrevoy.com/?article41/electron-donor.
Une petite question qui me reste ; est-il possible de brider cette fonction à l'article suivant/précédent dans sa catégorie. ( ici ; par exemple la categorie 'digital painting' ).
Merci encore
par
où tu remplaces CAT_ID par l'id de ta categorie (exe: 002)
Occasionnelement tu peux créer un 3ieme paramètre à la fonction avec un petit test: si le paramètre est renseigné tu utilises la ligne qui filtre sur la catégorie, sinon tu utilises le code initial.
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
peut-on imaginer la même chose pour les statics ?
De manière à proposer un ordre "normal" de lecture des articles
ou d'inciter le lecteur à la fin de sa lecture, d'aller lire le suivant ...
Cordialement,
D.San
---
Sinon, je profite du déterrement de ce sujet un an et demi après pour dire que j'utilise toujours cette fonction sur mon Pluxml (avec de beaux boutons noir et blanc que je me suis fait sous Gimp ) ; c'est visible ici http://www.davidrevoy.com/index.php?article84/trophy-hunting
c'est vraiment magnifique ce qu'on peut voir dans ton portfolio.
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
Je me joins de tout coeur à Stéphane pour la qualité de ton portfolio.
Mon petit portfolio/blog est motorisé par Pluxml depuis pas mal d'année maintenant ; jusque là , jamais eu de soucis
Avec Gedit ( un notepad sous Linux Mint ) , Xampp et Filezilla ça me rends bien indépendant des 'blogspot' et autres blog tout fait. J'aime beaucoup la souplesse de Pluxml pour mon portfolio. ( ma partie portfolio est actuellement géré par des statiques qui redirigent vers des HTML en fonction de la taille d'écran ( mobile ) ou de la langue ( fr / uk ) ) .
J'aime beaucoups les bricolages sur le wiki aussi , ( tag cloud ; champs de recherche ; gravatar ; style pour commentaire admin ; lien de reseaux sociaux ) ça me fait bricoler un peu de temps en temps ; c'est mon instant 'tuning'.
Stéphane : super aussi ton blog ( et j'aime beaucoup le look de ta page d'acceuil avec la citation ).
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
Existe-t-il une méthode pour obtenir le titre de ces articles suivant/précédent ..?
Voir même les champs de statiques.xml, je me dépatouille après.
Je vois bien obtenir la clef de l'article et la comparer avec la valeur de "number" de statiques.xml et extraire ensuite ce qu'on veut, mais je ne suis pas très bon en Parssage de xml
Quelqu'un aurait-il une astuce ?
Merci
Cordialement,
D.San
après moultes essais, je suis arrivé à ça:
ça marche mon côté ... et du du votre ?
Cordialement,
_____
D.San
Je n'ai pas encore tester, mais je le ferais surement si le besoin de boutons pour mes pages statiques s'en fait sentir.
mais ce n'est pas pour les pages statics,
plutôt pour afficher le titre de l'article suivant/précédent.
Cordialement,
_____
D.San
Merk6
Est-ce qu'il est possible de restreindre ces liens à la catégorie courante ?
Si oui comment ?
D'avance merci pour votre aide
le plugin artPS du lapin bleu vous facilitera la vie je suppose ... A télécharger ici
Cordialement,
Je viens de tester toutes ces solutions avec une version fraiche ( codes dans plxshow ou le plugin ArtPS ).
Plus aucuns ne fonctionnent ...
O:) Merci d'avance pour l'aide !
( Je suis bloqué dans l'élaboration de mon nouveau thème printanier, étant pas assez compétent pour résoudre les bug... )
* http://code.google.com/p/my-pluxml/downloads/list
* http://pluxopolis.net/allarchives
* https://github.com/Pluxopolis?tab=repositories
( note ; ces listes sont des mines d'or )
si rien ne fonctionne c'est qu'il y a un pb ailleurs ...
Je vais essayer de me servir de cette syntaxe "Recommander des articles" pour voir comment corriger les bouts de codes qui bug. Ils ont bien fonctionner jusqu'a 5.2 , mais après plus moyen 8.( .
Mon but étant toujours deux simples boutons article 'suivant' et 'précédant' qui reste dans la même catégorie.
Je tiens au courant si mes copier-coller et substitution de code fonctionne.
Le code de Stephane et de DanielSan fonctionne encore ; pour un 'Suivant' et 'Precedant' en global. ( sur tous les articles ).
C'est la ligne pour limiter au suivant ou précedent de la catégorie de l'article qui bug.
dans core/lib/class.plx.show.php :
et dans le template /themes/<nomdutheme>/article.php :
pour ma part j'utilise le plugin artPS et j'ai constaté un bug que je cherche à corrigé, d'où ma présence sur ce fil.
Depuis l'accueil, ça liste bien les articles suivant précédent jusqu'à tomber sur un article qui n'est pas classé en page d'accueil. À partir de ce moment là ça n'affiche plus que les liens vers les articles non classés en page d'accueil.
Et depuis une catégorie, ça affiche tous les articles. Je cherchais justement comment limiter la liste à la catégorie en cours.
Il y a un moment que j'ai décroché en PHP… du coup si quelqu'un a une idée…
Et pourquoi développer sa propre fonction ou son propre plugin plutôt que de contribuer à artPS et l'améliorer éventuellement ?
Ceci étant, ça pourrait être une bonne idée d'avoir ça dans le core de PluXML.