Présentation
Correctement installé (voir http://www.spip.net/fr_article3396.html), ce plugin permettra aux visiteurs de noter vos articles directement depuis l’espace public.
La notation se fait de façon classique sous forme d’étoiles cliquables, à l’apparence et au nombre paramétrable (jusqu’à 10).
Comment ça marche ?
Le plugin gère 2 tables :
- NOTATIONS : qui contient les notes saisies par visiteur, avec les champs suivant :
- #ID_ARTICLE : l’article noté ;
- #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 (pas utilisé mais peut-être plus tard...)
- NOTATIONS_ARTICLES : qui contient la note finale de l’article, avec les champs :
- #ID_ARTICLE : l’article bien sûr ;
- #NOTE : la note moyenne (utiliser le filtre (#NOTE pour avoir la note arrondie) ;
- #NOTE_PONDEREE : la note pondérée (voir plus loin) ;
- #NB : le nombre de votant.
Vous pouvez scanner 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.
Et dans mon squelette ?
Une seule balise est à ajouter dans votre squelette, dans le fichier article.html (ou dans le fichier article-xx.html pour limiter la notation aux articles de la rubrique xx) : la balise #NOTATION
. Elle prend en charge l’affichage et la gestion des notes. Elle se place classiquement sous le titre de votre article...
Attention : la balise doit être placée dans une boucle articles SPIP.
Une autre balise est introduite : #NOTATION_ETOILE{nb}
.
Elle permet d’afficher un nombre (la note par exemple) sous forme d’étoiles.
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.
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.
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.
Et dans mes articles ?
Le plugin propose un certain nombre de modèles à utiliser directement dans vos articles, 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,...>
la note donnée par un groupe d’auteurs (yy,zz...)
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...
- J’ai déjà un système de notation à partir de mots clés ?
Si vous aviez déjà un système de notation, vous pouvez utiliser la balise #NOTATION_ETOILE{nb}
pour homogénéiser l’affichage dans votre site.
Ainsi, si vous référencés des logiciels et que vous voulez attribuer une note pour les graphismes, une pour la compatibilité, une pour la jouabilité, etc. : créez un groupe pour chaque catégorie de note contenant chacun les mots clés 1, 2, 3... correspondant aux notes, puis affectez classiquement ces mots clés aux articles dans l’espace privé.
Vous pouvez alors afficher les notes correspondantes dans vos articles. Par exemple pour le groupe de mot clé jouabilité :
<BOUCLE_groupes(GROUPES_MOTS){titre=jouabilite}>
<BOUCLE_mots(MOTS){id_article}{id_groupe}>
Jouabilité : #NOTATION_ETOILE{#TITRE}
</BOUCLE_mots>
</BOUCLE_groupes>
- J’aime pas les étoiles !!
C’est votre droit... L’affichage de la note est paramétrable : pour cela, il vous suffit de définir une image notation-on.gif
et notation-off.gif
dans le répertoire img_pack/
de votre squelette.
Vous pouvez même définir une image différente pour chaque indice de notation : notation-on1.gif
, notation-on2.gif
, ... et leur pendant : notation-off1.gif
, notation-off2.gif
, ...
Vous pouvez également modifier le libellé des notes en surchargeant note_1, note_2,... dans le fichier de langue de votre squelette (lang/local_fr.php ou recopier et modifiez le fichier lang/notation_fr.php du plugin).
Mise à jour v0.2
Cette mise à jour tient compte de quelques remarques faites sur le forum.
Elle ajoute une nouvelle noisette : notation_preferee qui donne le Top Ten pour un auteur donné ou pour la personne connectée (si aucun id_auteur n’est envoyé). De quoi personnaliser un peu plus vos pages...
Afficher les 10 meilleures notes de l’auteur 1 :
<notation|preferee|titre=TOPTen|max=10|id_auteur=1|left>
Afficher les 10 meilleures notes de la personne connectée :
<notation|preferee|titre=TOPTen|max=10|left>
Mise à jour v0.3
Permet de placer plusieurs formulaire de notation sur une page (voter pour plusieurs articles sur une même page).
Corrige un bug d’affichage des étoiles (si plus de 5)...
Mise à jour 1.9.3
Test de portage pour un SPIP 1.9.3... (sans garantie)
Discussions par date d’activité
61 discussions
Par rapport à la documentation il y a des « choses » qui ont disparu dont la balise #NOTATION ... :-))
ou préciser que
#NOTATION_ETOILE{n,id}
prend 2 paramètres :n
qui est la note (récupérée par la valeur de#NOTE
par exemple) etid
qui est une combinaison du typearticle#ID_ARTICLE
ouauteur#ID_AUTEUR
Le gros soucis c’est l’inclusion de squelettes !!!
Exemple si dans article.html j’ai un :
<INCLURE{fond=inc-art}{id_article}>
et dans inc-art.html
Ca ne fonctionne pas (ou mal). Cause l’#INSERT_HEAD pourtant présent dans article.html, après calcul ne contient pas les éléments suffisants... encore moins pour mettre le formulaire et c’est normal quand on regarde la façon dont est calculé l’#INSERT_HEAD... il fait un test qui est forcément faux lorsque #FORMULAIRE_NOTATION n’est pas utilisé !!! :((
Je propose de supprimer ou de modifier le test ligne 14 dans notation_affichage_final de notation_pipeline.php ou de rajouter un
<div class="formulaire_notation
dans notation_fonctions.php... au choix. D’ailleurs les balises input qui se baladent toutes seules ... :((PS : Pour s’en sortir sans code php il suffit de mettre cela dans le squelette (les div sont nécessaires) :
Joli plugin néanmoins ;-)
Chris, ne t’affole pas trop encore, je suis en train de le recasser une nouvelle fois...
Merci pour ta précision sur affichage final, je n’avais pas fait attention qu’il faut des js en dehors du formulaire, je corrigerai dans la foulée.
En ce moment, la version de dev n’est plus compatible 1.9.2 (il faut utiliser les zips fournis pour ça). Je suis en train de transformer le plugin pour utiliser les fonctions de SPIP 2.0 et particulièrement pour rendre générique la notation quelque soit l’objet noté (pour l’instant, on peut noter les articles, comme le signale cet article, et les forums (comme ne le dit pas l’article, qui furent ajoutés par b_b), mais va faire bien mieux... On pourra noter une table (KIKOULOL) tiens, pourquoi pas !
Je ne suis pas affolé... je l’utilise avec SPIP 2.0 pour un site déjà en ligne dont je peux donner l’url en privé (pas de pub ici).
Et j’en suis fort satisfait... pour le moment :)
Voilà qui est fait en version 0.6, décrit dans l’article Notation d’éléments SPIP.
Répondre à ce message
Nickel ;)
Çà fonctionne !!
MERCI ET BONNE CONTINUATION
Répondre à ce message
Bonjour,
j’ai un petit soucis, un message d’erreur apparait :
Fatal error : Call to undefined function sql_countsel() in notation.php on line 54
ps : Spip 1.9.2 notation_192(v0.4) installer et paramétré avec #INSERT_HEAD dans inc-head.html. J’utilise le squelette Iensp et la balise #NOTATION dans article.html.
La balise #NOTATION_ETOILE5 fonctionne.
Merci d’avance
Bonjour,
La fonction sql_countsel n’apparait que dans la v.1.9.3... J’ai placé une ancienne version en téléchargement qui devrait mieux marcher.
@+
Bonjour, je viens de tester la nouvelle ancienne version et les étoiles s’affiches, mais il ne charge pas les fonctions javascripts, j’ai pourtant mis #INSERT_HEAD dans la tête.
- je suis avec SPIP 1.9.2d
- J’ai testé avec cfg activé et désactivé
En plus le plugin me blog sur la page plug-in du panneau d’administration.
Merci.
Répondre à ce message
Bonjour.
J’ai tenté l’installation de votre plugin sous 1.9.2d en local (XAMPP), sur base déjà existante avec d’autres plugins (Agenda pour SPIP 1.9.2/Recherche Etendue/Widget Calendrier)
Installation réussie : création des 2 tables (spip_notation/spip_notation_articles)
Le paramétrage semble OK : accessibilité à tous.
Mon squelette est un squelette personnalisé, placé dans un répertoire de squelettes. Le #INSERT_HEAD est bien défini et placé entre les balise
<head></head>
.Je place ma balise #NOTATION dans une Boucle ARTICLE toute simple :
Résultat :
La désactivation et réactivation progressive des autres plugins ne change pas le comportement du plugin « Notation »
A noter que la boucle
m’affiche les 5 étoiles colorées, mais impossible de cliquer/valider un vote, rien ne se passe.
J’ai toujours le message
qui apparaît
J’ai testé en étant loggué en tant qu’administrateur/simple visiteur, rien n’y fait. Les tables spip_notation et spip_notation_articles sont vides.
Une piste ?
J’ai le même problème avec ma SPIP 1.9.2d [11132] et la version 0.4 du plugin.
#NOTATION est bien dans une boucle article, j’ai le #INSERT_HEAD dans le head (en dur ou via le couteau suisse).
Comme autre plugin, j’ai le Couteau Suisse v1.7.18.03 et Article PDF v0.1
Désactiver ces plugins ne change rien au message d’erreur Call to undefined function : sql_countsel() ...
Si quelqu’un sait comment résoudre ce problème...
Bonjour,
Installez le plugin CFG pour résoudre le problème.
++
Merci, cela a résolu le problème ;)
Bonjour,
J’ai le même message d’erreur que ci dessus, bien que le plugin CFG soit installé.
version Spip :1.9.2d
version plugin : 0.4 (192)
version CFG : 1.0.2
Squelette Sarka spip (non-plugin)
Pouvez vous m’aider ?
Merci
Salut,
Personne n’a d’idées ? c’est dommage, j’aimerai bien utiliser ce plugin !!
Répondre à ce message
Bonjour,
J’ai installé votre plugin et cela fonctionne très bien sur mon site.
Une question cependant : est-il possible de jouer sur la taille des étoiles ? C’est-à-dire que le format des étoiles me convient bien à certains endroits de mes pages et pas à d’autres. Donc, y a-t-il une possibilité de filtre à la balise #NOTATION_ETOILE du genre image_reduire ? (j’ai essayé et cela ne marche pas...)
Merci pour votre réponse.
Bonjour,
Il n’y a pas possibilité de « filtrer » la taille des étoiles, cependant, vous pouvez utilser l’attribut width et height dans le css, en plaçant votre note dans une division particulière :
et dans le css
Ainsi, suivant le squelette utilisé, la taille changera...
@+
Répondre à ce message
Bonjour,
j’ai lu la procédure et l’ensemble des contributions, pourtant, impossible de fonctionner chez moi avec un message :
Fatal error : Call to undefined function sql_countsel() in /www/news/plugins/notation_192/balise/notation.php on line 54
Une explication ?
Merci
François
Sorry, j’avais pas vu la question précédente de ce jour, et j’ai le même souci.
Répondre à ce message
hello
merci pour ce plugin !
je viens de l’installer sur un spip 1.9.2d.
dans le squelette de la dist, j’ai ajouté #NOTATION. Ensuite en frontoffice je vote pour mon article, ça a l’air de marcher mais quelquesoit la note que je donne à l’article, il n’y a qu’une seule étoile qui est colorée après le vote. Ais-je raté un épisode ? c’est pas la moyenne des notes données qui défini le nombre d’étoiles colorées ?
oups, je me réponds à moi-même... en fait j’avais zappé la partie configuration du plugin qui explique tout...(notamment la pondération)
et tout fonctionne très bien.
désolée pour ces messages inutile...
Répondre à ce message
Bonjour,
Je souhaiterais pouvoir afficher la note avec la balise #NOTATION mais sans permettre de noter (donc sans le formulaire et le rollover).
J’ai bien essayé avec #NOTATION_ETOILE#NOTE mais le problème c’est que #NOTE n’est pas facilement accessible avec des boucles complexes alors qu’il n’y aucun problème avec #NOTATION.
Auriez-vous une solution ?
Cdlt,
Bas
Bonjour,
Pour utiliser la balise #NOTE :
@+
Bonjour,
Merci pour la réponse.
J’ai une autre question. Dans le code qui va suivre la balise #INTRODUCTION est vide dans le resultat affiché alors que les autres balises sont correctes. Quelqu’un sait-il pourquoi ?
Merci !
Bas
Répondre à ce message
Bonjour,
J’ai installé ce magnifique plugin il y a un bout de temps.
Mais apparemment il n’est pas compatible avec certains autres plugins.
Par exemple, quand j’essaie d’activer Notation des articles, Agenda pour SPIP 1.9.2, Activer le pluginSPIP-Listes et Widget Calendrier ça ne marche pas. Mais, sans Notation des articles ça fonctionne !
J’ai pas envie de perdre toutes mes notations d’articles, et surtout, à ma connaissance il n’y a pas d’autres plugins de notation à la hauteur de celui-là.
Y a-t-il un moyen d’arranger la compatibilité entre ces plugins ?
Merci.
a+
Bonjour,
Quels sont les symptômes et en activant les plugins un par un, quel est celui incriminé ?
Personnellement, j’ai activé les quatre plugin sur un site en local, sans que cela ne pose problème...
@+
Répondre à ce message
Très bon ce plugin. Une chose serait particulièrement pratique : utiliser ajax lors du vote afin de ne pas avoir à recharger toute la page mais seulement le bloc concernant la notation.
Cela serait non seulement plus pratique pour l’utilisation sur des pages assez lourdes, mais permettrait surtout d’avoir une page avec la possibilité de noter plusieurs éléments. C’est le cas sur un site que je réalise sur lequel j’aimerais que les visiteurs puissent noter rapidement et en les comparant plusieurs articles.
Avez-vous une idée de comment je pourrais faire ?
Merci beaucoup.
Bonjour,
C’est une question à laquelle j’ai déjà réfléchi... Il faut connaître un peu JQuery et sa composante Ajax... J’ai bien quelques idée, mais pas vraiment de temps pour les mettre en pratique...
Peut-être dans une prochaine version...
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |