Critère pseudo_hasard : navigation par hasard améliorée

Ce plugin apporte un nouveau critère {par pseudo_hasard} assez proche de {par hasard} mais avec quelques subtilités très pratiques pour la pagination.

Qu’apporte ce plugin ?

Lorsque l’on utilise le critère de tri {par hasard}, chaque calcul du squelette (y compris lors de la pagination) trie aléatoirement les résultats, ce qui n’est pas sans poser de problèmes avec la pagination.

Prenons par exemple la liste d’articles suivante :

  • Article 1
  • Article 2
  • Article 3
  • Article 4

La boucle <BOUCLE_articles(ARTICLES){par hasard}{pagination 2}> affichera sur la page 1 :

  • Article 3
  • Article 2

et sur la page 2 :

  • Article 4
  • Article 3

La répétition de l’article 3 est intrinsèque au fonctionnement du critère {par hasard}.

Maintenant, avec ce plugin et la boucle <BOUCLE_articles(ARTICLES){par pseudo_hasard}{pagination 2}>, la page 1 affichera :

  • Article 3
  • Article 2

et la page 2 :

  • Article 1
  • Article 4

Pas de répétition cette fois. Et même si vous recalculez une des pages, l’ordre des articles sera inchangé. Le hasard de ce plugin est modifié toutes les 24h contrairement au hasard de SPIP qui est modifié à chaque calcul.

Comment utiliser le plugin ?

Si vous n’avez pas déjà le dépôt externals dans votre SPIP, ajoutez le dépôt https://files.spip.net/externals/archives_externals.xml pour trouver le plugin automatiquement.

Après ajout et activation du plugin, vous pouvez utiliser le critère {par pseudo_hasard} dans vos squelettes qui fonctionnera comme {par hasard} mais sans les problèmes de doublons avec la pagination.

Comment ça fonctionne techniquement ?

Le plugin rajoute une colonne MySQL pseudo_hasard à toutes les tables. Une tâche cron toutes les 24h met à jour la valeur de cette colonne pour une valeur aléatoire. Tout nouvel objet éditorial est aussi créé avec une valeur aléatoire dans cette colonne.

Comment contribuer ?

Le plugin est disponible sur GitHub pour vos forks : https://github.com/cahri/spip-pseud....

Dernière modification de cette page le 10 février 2018

Discussion

4 discussions

Ajouter un commentaire

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom