Le labo

Bidouilles et prises de notes en vrac

Accueil > Docs > Notation d’éléments SPIP

Notation d’éléments SPIP

jeudi 24 juillet 2008, par b_b

Ce plugin est une mise à jour majeure du plugin Notation d’articles. Les principales nouveautés sont les suivantes :

  • plugin basé sur les nouveaux formulaires ajax de SPIP 2
  • utilisation du script Jquery Star Rating
  • notation des articles et des messages de forum

Correctement installé (voir http://www.spip.net/fr_article3396.html), le plugin permettra aux visiteurs de noter les éléments de SPIP directement depuis l’espace public. Pour l’instant le plugin permet de noter les articles et les messages de forum.

La notation se fait de façon classique sous forme d’étoiles cliquables, à l’apparence et au nombre paramétrable (jusqu’à 10).

Mise à jour et compatibilité

Ce plugin n’est pas compatible avec les versions antérieures à SPIP 2.

Vous pouvez continuer à utiliser le plugin Notation d’articles si votre version de SPIP n’est pas compatible avec ce plugin.

Mise à jour depuis le plugin Notation d’articles : si vous utilisiez ce plugin, avant de faire une mise à jour vers le plugin Notation assurez-vous bien d’utiliser la dernière versions du plugin Notation d’articles et sauvegardez votre base de données.

Comment ça marche ?

Le plugin gère 2 tables :

  • NOTATIONS : qui contient les notes saisies par visiteur, avec les champs suivant :
    • #OBJET : le type d’objet noté ;
    • #ID_ARTICLE : l’article noté (0 si aucun) ;
    • #ID_FORUM : le message de forum noté (0 si aucun) ;
    • #ID_AUTEUR : l’auteur (s’il est identifié)
    • #IP : l’adresse IP (utile si le visiteur ne s’est pas identifié)
    • #NOTE : la note ;
    • #MAJ : la date de saisie de la note
  • NOTATIONS_OBJETS : qui contient la note finale de l’article, avec les champs :
    • #OBJET : le type d’objet noté ;
    • #ID_ARTICLE : l’article noté (0 si aucun) ;
    • #ID_FORUM : le message de forum noté (0 si aucun) ;
    • #NOTE : la note moyenne (utiliser le filtre (#NOTE pour avoir la note arrondie) ;
    • #NOTE_PONDEREE : la note pondérée (voir plus loin) ;
    • #NOMBRE_VOTES : le nombre de votant.

Vous pouvez afficher le contenu de ces tables via les BOUCLEs de SPIP.

Comportement :
- On limite à un vote par article et par utilisateur (ou adresse IP lorsqu’on n’est pas enregistré).
- Une personne non enregistrée vote donc sur son adresse IP. Si une même adresse IP vote plusieurs fois, le nouveau vote remplace l’ancien sauf s’il correspond au vote d’un utilisateur identifié qui reste prioritaire (non mais).
- Si l’utilisateur s’est identifié, on enregistre son id_auteur, ce qui permet de gérer un vote des auteurs (vote de la rédaction, critiques...).
- Vous pouvez limiter le vote aux personnes enregistrées au préalable, aux auteurs, aux seuls administrateurs ou l’ouvrir à tous.

Balise du plugin

Une seule balise est à insérer dans votre squelette, dans une boucle ARTICLES ou dans une boucle FORUM : la balise #FORMULAIRE_NOTATION. Elle prend en charge l’affichage et la gestion des notes.

Qu’est-ce que la Pondération ?

Le but est d’accorder une meilleure note aux articles ayant reçu plus de votes : il est injuste qu’un article ayant reçu 1 seul vote de 5 soit mieux classé qu’un article ayant reçu 100 votes et une moyenne de 4,99 (non ?)...

On choisit la formule :

moy_ponderee = moy * (1-EXP(-10*moy/(2*coef)))

Si moy>coef, on a moy_ponderee~moy, ;
sinon moy_ponderee<moy, .

Le principe de la pondération est de pénaliser les articles ayant eu peu de votes... et faire sortir en premier ceux ayant suscité le plus d’intérêt.

Le facteur de pondération est le nombre de votants que vous jugez pertinent, en fonction de la fréquentation et du nombre de votes sur votre site (tout article ayant un nombre de votes inférieur au facteur de pondération verra sa note pénalisée), il est réglable dans l’espace privé.

Pour désactiver la pondération, choisissez un facteur de pondération de 1.

Configuration dans l’espace privé

Une nouvelle icône vient s’ajouter au menu Forum. Elle permet d’accéder au paramétrage du plugin : facteur de pondération, limiter la notation aux administrateurs, aux auteurs, aux personnes enregistrées ou à tous. Une option permet de définir si une personne peux modifier sa note après avoir voté ou non.

Le nombre d’étoiles que vous désirez afficher (la valeur max de la note, entre 1 et 10) doit être fixée en début de vote afin de ne pas créer d’incohérences dans la notation.

Les modèles du plugin

Le plugin propose un certain nombre de modèles à utiliser directement dans vos articles ou squelettes, regardez les, modifiez les pour les adapter à vos propres besoins :

- <aut33|notation|id_article=10|left>
affiche la note de l’auteur 33 pour l’article 10
- <notation|topten|max=10|titre=le TopTen>
affiche le topten (les 10 articles les mieux notés)

- <notationxx|statistiques|left|titre=Statistiques>
affiche les statistiques (nombre de votes) pour l’article xx.

- <notationxx|tableau|id_auteur=yy,zz,...>
affiche la note donnée par un groupe d’auteurs (yy,zz...)
- <notation|preferee|titre=TOPTen|max=10|id_auteur=1|left>
affiche les 10 meilleures notes de l’auteur 1

FAQ

- Comment gérer des critiques ?
Il est possible de gérer des critiques au travers des forums de l’article : dans ce cas, le titre du post doit contenir le texte [notation]. Les points positifs doivent être précédés de [+] et les points négatifs de [-].
À ce titre, un filtre est disponible : notation_critique pour supprimer les balises et remplacer [+] et [-] par une image d’img_pack (notation-plus.gif et notation-moins.gif), par exemple [(#TITRE|notation_critique)] permet de supprimer [notation] du titre du post.
Un exemple d’utilisation est donné par le modèle <autxx|critique|id_article=yy> qui affiche la critique de l’auteur xx pour l’article yy...