Billet mis à jour 18 octobre 2008
Vous avez pu tester depuis quelques jours le plugin de votes sur mon blog. Je viens d’y mettre la dernière touche : il est donc enfin disponible au téléchargement.

Alors, ce plugin, comment fonctionne-t-il ?
A la question “article intéressant ?”, vous répondez oui ou non. Selon votre réponse, un vote positif ou négatif est ajouté à la liste des votes de l’article, et le calcul de popularité est actualisé. Dès que vous votez, un cookie est créé (ou mis à jour s’il existe déjà) contenant l’identifiant de l’article correspondant. Ainsi, vous ne pourrez pas voter deux fois pour le même article. Le cookie expire au bout de 6 mois, ça me parait suffisant.
Deux modes de vote sont disponibles
Dans l’administration du plugin, vous pouvez choisir de le configurer pour qu’il fonctionne en mode ajax ou en mode normal. En mode ajax, le vote et l’actualisation de l’affichage se font sans rechargement de page. En mode normal, vous l’aurez deviné, c’est un lien normal qui est proposé. Avec rechargement de page donc.
Personnalisation
La question “article intéressant ?” et les réponses “oui, non” sont modifiables directement dans vos pages. Pour ce qui est de la structure de l’affichage, vous pouvez la modifier mais œuvrez avec prudence : vous ne devez pas toucher aux id et class sous peine de sérieux désagrément.
Quant aux couleurs, vous pouvez les personnaliser via l’administration du plugin.
Pour modifier les textes, utilisez le fichier “locales/fr/main.lang.php”, en prenant bien garde à enregistrer en UTF8.
Widgets
Deux widgets sont disponibles : les billets les mieux notés et les billets les moins appréciés (titres personnalisables). Le classement se base sur le nombre de votes de chaque billet, mais il y a une restriction. En effet, si l’on prend en compte tous les billets, on se retrouve forcément avec, en tête de classement, tous les billets ayant reçu un unique vote positif. J’ai donc ajouté un paramètre dans les deux widgets permettant de déterminer à partir de combien de votes un billet doit être pris en compte.
Si vous avez des suggestions ou remarques, comme d’habitude, n’hésitez pas.








39 commentaires pour : Le plugin de vote pour dotclear 2 est disponible
Génialissime évidemment…
MErki !
Par contre chez moi le mode ajax provoque une erreur 404…
héhé c’est encore moi ! deux petites suggestion :
pouvoir voir les résultats des votes dans l’admin… Un Hall of fame serait génial…
Pour ton problème de moyenne, je sais pas si c’est facilement faisable dans le code…
Il suffit de calculer tes ratios sur l’ensemble des billets sans te poser de question et de prendre une clé de sélection = concaténation du nb de vote+ moyenne
En considérant évidemment que plus il y a de vote, plus les résultats sont signifiants
Allez encore deux suggestions et je vais me coucher, vraiment !
- Pouvoir personnaliser les textes et en multiblog (ne pas mettre la même invit sur les blogs différents)
- Mettre une couleur par défaut neutre dans la barre de vote quand il n’y a pas encore eu de votes
- Dans l’admin, avoir la possibilité (en plus du hall of fame
) de réinitialiser un score…
Salut Julien,
Merci pour ton plugin que je vais installer de ce pas.
Pour la prise en compte des votes dans le widget personnellement je pense qu’il faut compter les votes par ratio et les classer par ordre décroissant de ceux qui ont le plus de votes oui à ceux qui ont le moins de votes oui.
Je ne sais pas si je me suis bien fait comprendre ? mais à mon avis c’est dans ce sens qu’il faut le voir !! Peut être je me trompe, si oui dites le moi !!
et a l’avenir je lirais les commentaires avant de poster car je redis un peu la même chose que Kompositor
heuuuuuu… pourquoi moi dans post.html et home.html j’ai pas cette ligne :
??
Bon je vais regarder ou elle se trouve dans le thème par défaut !!
Bon dans le thème par défaut j’ai pas trouvé non plus cette ligne mais c’est pas grave j’ai su placer le plugin …
En revanche que ce soit en URL ou en AJAX (qui me génère une petite erreur) les votes ne sont pas pris en compte ….
Bizarre …
Bon, c’est pas gagné !
Oui vous avez cent fois raison. Je vais modifier les widgets pour que le ratio soit calculé sur l’ensemble des votes effectués.
Pilou : Je viens de vérifier dans le thème par défaut fourni par dotclear 2, et j’ai bien la ligne dont je parle (l 95). Tu as peut-être une version antérieure, genre une beta ?
Je suis étonné que les votes ne soient pas pris en compte, surtout que tu es en path_info. Tu peux me dire quelle erreur tu as en mode ajax ?
Kompozitor : Oui c’est normal que le vote Ajax ne fonctionne pas chez toi, ton site est configuré en query_string. Il faut encore que je trouve comment le faire fonctionner dans ce cas là…
Pilou, tu peux réinstaller le paquetage ? J’ai fait des modifications dans la nuit et je vois qu’elles ne sont pas sur ton blog. On dirait que j’avais oublié de le mettre à jour…
Je vais faire ça de ce pas
Julien j’te liasse faire un test:
http://www.chezpilou.info/post/2008...
Pour l’instant c’est en version URL !!
Ok, comme je n’avais pas modifié la version du plugin, ta mise à jour ne s’est pas faite. Ca fonctionnera mieux avec celui-ci :
http://apperisphere.com/blog/public...
Je regarde ça demain parce que la je pars et je ne pourrais pas m’en occuper …
Merci Julien !!
Je viens de modifier les widgets de manière à ce que le calcul soit fait sur l’intégralité des votes.
Cela dit, on se retrouve tout de même avec un problème. Les billets ayant reçu le plus de votes font à la fois parti du classement des pires et des meilleurs.
Le mieux est donc de prendre en compte uniquement les votes du billet pour faire le calcul de popularité, mais à partir d’un certain nombre de votes, nombre suffisant pour qu’une tendance claire se dessine. Et nombre personnalisable, car il dépend grandement du trafic de chaque site…
moi ça marche pas
j’ai impression que je ne colle pas le code là où il faut.
ok pour _head.html, mais pour post.html (je ne le mets pas sur la home), tu dis de mettre ces deux lignes, l’une après l’autre, tout en haut de la page ?
c’est ça ?
puis le gros bout de code on l’insère dans l’affichage des postes ?
j’ai plein de code moche qui s’affiche, genre
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http%
puis le vote n’est pas pris en compte…
help ?
Non ce n’est pas ça. Effectivement mon explication n’est pas très claire.
doit être placé en tout début de page.
Ensuite, le code visible quand tu cliques sur “voir le code” est à placer après :
en fait, je n’ai pas tpl:SysBehavior behavior=”publicEntryAfterContent” dans ma page post.html
et même si je le mets, j’ai le même résultat : le module s’affiche, mais si je click sur “oui” ou “non”, les bouts de codes tout moches apparaissent et le vote n’est pas pris en compte…
//www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”> <html xmlns=”http%
j’ai essayé également avec un autre thème et donc une autre page post (à la place de ma page adaptée simplewebsite).
est-ce obligé d’avoir le code sur home.html si on n’utilise pas le module sur cette page ? il y a qqc qui cloche en tout cas, et je comprends pas. j’aimerais bien faire tourner, c’est un élément dont j’ai vraiment besoin !
au secours !
Est-ce que tu as bien mis tpl:VoteLoad en tout début de page, juste avant le <!DOCTYPE html PUBLIC ?
oui !
ce n’est qu’un prototype, mais voici un exemple d’article :
http://blog.jennybeaumont.com/index...
Ok du coup j’ai pu me rendre compte par moi même sur ta page. Il doit y avoir un espace avant ou après le tpl:VoteLoad, car le doctype n’est pas sur la première ligne. C’est ce qui doit provoquer cette erreur.
non, il n’y a pas d’espace. juste tpl:voteload en premiere ligne. j’ai aussi essayé avec doctype apres mais sur la même ligne…ça provoque le même erreur.
voilà, comme promis un petit commentaire pour te faire penser aux “multiblogueux”…
En multiblog, le widget et la page de votes récupèrent les billets de tous les blogs…
Une petite restriction au blogID serait géniale
Julien ton zip est vide, impossible de mettre a jour
Arf, le lien n’était pas bon, c’est corrigé. C’est le bazar, avec mon changement de serveur, j’ai du changer un brin l’url et je ne m’y retrouve plus avec toutes ses redirections !
Plugin mis à jour.
Merci Julien c’est nickel !!
j’ai trouvé ! en fait, il fallait que tpl:VoteLoad soit après <!DOCTYPE html PUBLIC> mais avant <html> ! maintenant c’est nickel
comme le site sur lequel je bosse est en anglais, j’ai aussi osé touché à vote.js, même si tu préconise que “”merci d’avoir voté !”, “déjà voté !” et “vote(s)” ne sont pas encore modifiables.” :p
une chose que j’aimerais bien en plus, si je peux me permettre, sera la possibilité d’insérer le widget Meilleurs appréciés autre part que le sidebar. un peu comme Billets connexes….yes ?
à ton honneur..
-jennyb
Oui en fait le texte n’est pas modifiable via l’administration, mais en allant voir le code tout est possible
Ok pour l’insertion du widget ailleurs que dans la sidebar. Je vais l’ajouter dans ma todo list.
Super plugin, que je viens d’installer! Merci.
J’ai une requête : ça serait top si on pouvait choisir d’afficher le plugin sur des billets sélectionnés (case à cocher dans l’admin).
Merci encore.
Bon j’ai trouvé un “way around”: je ne veux permettre le vote que sur les billets ayant une catégorie associée, du coup j’ai juste mis un <tpl:EntryIf has_category=”1″> et pif!
Un dernier truc, je veux changer le texte “Interesting post ?” (on ne met pas d’espace avant les !?:; en anglais). Où puis-je le trouver ? J’ai écumé le dossier du plugin, j’ai changé le texte partout où je l’ai trouvé, sans succès.
Bien joué ! Je note ta proposition mais je ne garantis rien, mon temps est compté.
En fait, il ne fallait le changer nulle part ! Le texte dans les fichiers php va chercher l’équivalent traduit dans les fichiers de langue du dossier locales. Si ton blog est en français, il doit afficher “billet intéressant ?” à la place. S’il est en anglais ou autre langue, il faut que tu dupliques le dossier “fr” compris dans le dossier “locales” en remplaçant par le code langue de ton choix.
ok, merci! J’ai réinstallé le plugin et dupliqué puis renommé le dossier “fr” en “en”.
Restent les “Déjà voté !” et “Merci d’avoir voté !” qui sont toujours en français. J’ai rafraîchi, sans succès.
Hum, c’est curieux. Par contre en testant je viens de découvrir une erreur qui fait qu’en votant “non” en ayant déjà voté, le texte correspondant ne s’affichait pas.
Version corrigée : http://apperisphere.com/blog/public...
Sinon, est-ce que tu as supprimé le cache de ton navigateur ? Passe moi l’adresse du blog si tu veux que je regarde.
Je confirme, cookies et fichiers temporaires supprimés, les textes “Déjà voté !” et “Merci d’avoir voté !” sont toujours en français.
D’autre part - ça a peut-être déjà été mentionné plus haut - quand on vote sur une page listant plusieurs billets (page d’accueil par exemple), la barre de couleur et le compte des votes ne changent pas (ajax) dans le cas d’un second vote (sur un billet différent bien entendu), en revanche, si je vais sur la page du billet, mon vote a bien été pris en compte. Je me demande s’il n’y a pas une histoire d’ID qui se répète à chaque billet sur la page (”wild guess”, je n’y connais rien).
Mon blog est en construction, visible là: adelphi.oficial-theatre.co.uk
ué, deux “f” à “official”… :/
Ok, au temps pour moi, le texte n’était pas localisé dans certaines parties. Je viens de corriger ça.
http://apperisphere.com/blog/public...
Par contre je viens de tester sur ton site, je n’ai eu aucun problème en votant sur deux articles différents sur la page d’accueil.
ok, merci.
Pour l’histoire de votre, ça doit être moi ou mon navigateur, pas grave.
Merci encore!