Faire noter les articles par les visiteurs

Dans cet article, nous nous intéresserons à la possibilité d’utiliser des mots clés dans les forums pour attribuer une note à un article.

Résumé plus conséquent :

Je développe un site de critique, où les articles sont notés par l’auteur, sur une échelle de 1 à 10, grâce aux mots clés.
Mais, pour pouvoir contrebalancer cet avis, je voulais que les visiteurs du site commentant un article puissent eux aussi donner leur avis via une note (de 1 à 10 toujours).

Pour ce faire, nous allons suivre ces trois étapes :

Configuration Spip :

Dans l’interface d’administration : "Administration du site" > "Les mots clés", sélectionnez :
-  "Utiliser les mots-clés"
-  "Utiliser la configuration avancée des groupes de mots-clés"
-  "Autoriser l’ajout de mots-clés aux forums "

Base de données :

-  Créez un groupe de mot clé appelé par exemple "Note".
-  Créez ensuite des mots clés correspondant aux notes : 1, 2, 3, ..., N.
-  Comme paramètres, cochez :

    • Les mots-clés de ce groupe peuvent être associés : « aux articles »
    • Les mots de ce groupe peuvent être attribués par :
      « les administrateurs du site » ; « les visiteurs du site public lorsqu’ils postent un message dans un forum ».

Vous pouvez associer des images à chaque mot clé. C’est ce que j’ai fait, et le squelette sera construit comme ça.

Squelette article.html :

Dans le squelette de votre article, créez un forum, et à l’endroit où vous souhaitez voir apparaître la note :

<B_note>
<BOUCLE_note(MOTS){id_forum}{id_groupe=x}>
#LOGO_MOT
</BOUCLE_note>                  
</B_note>
<//B_note>

Où x est l’id du groupe "Note".

Vous pouvez également ajouter le nom du mot clé, son descriptif. Reportez-vous à la documentation officielle pour cela.

Résultats :

Vous pouvez voir le résultat en ligne ici : JKA.

En revanche, je n’ai pas trouvé de moyen pour n’appliquer ce système qu’aux forums de certaines rubriques.

Avez vous une idée ?

Dernière modification de cette page le 5 décembre 2006

Discussion

5 discussions

  • 1
    thierry

    C peut-ertre bete comme chou mais je n’arrive pas à trouver comment modifier le formulaire qui permet de poster une réponse comme sur votre site par exemple ? Quelqu’un pourrait-il m’en dire plus ?

    • kagemusha

      -  > forum.html dans squelettes/formulaires.
      si ce répertoire/fichier n’existe, faire comme pour toute modification, copier les à partir de dist/formulaires dans squelettes/formulaires et modifiez.

    Répondre à ce message

  • Bonjour je souhaiterais m’inspirer de cette contribution pour mettre en place un système de modération du forum par les rédacteurs sans entrer dans l’espace privé,en utilisant des mots clés. Mais je n’arrive pas à faire fonctionner la notation des articles d’une part, d’autre je souhaiterais savoir si c’est possible de l’applique aux messages du forum ; Merci d’avance pour votre aide.

    Répondre à ce message

  • 6
    manga-news

    Comment fais-tu pour avoir la moyenne des notes de tes visiteurs ?

    Je pense à la note visiteur disponible sous la note de l’auteur, dans ton exemple.

    Merci en tout cas pour cette contribution, ca fait longtemps que je l’attendais...

    • D’accord. Voici donc le code, merci à JLuc et Booz, et un dont je n’ai plus le nom en tête (désolé) :

      <strong>Note des visiteurs :</strong><br>
      <?php $moyenne = <B_moy_for>(<BOUCLE_moy_for(FORUMS){id_article}{id_groupe=7}{plat}{"+"}>
      <BOUCLE_moy_note(MOTS){id_forum}>
      [(#TEXTE)]</BOUCLE_moy_note></B_moy_note>
      </BOUCLE_moy_for>)/[(#TOTAL_BOUCLE)]
      </B_moy_for>5<//B_moy_for>;
      ?>
      <img src="images/notes/<?php echo round ($moyenne); ?>.gif">

      Ou dans le répertoire images/notes/ il y a 1.gif, 2.gif, ..., 10.gif.
      Par défaut, la note est 5.
      La moyenne est arrondie. (ex : http://81.80.29.230/benjamin/jka/article.php3?id_article=94 - deux notes 7 et 8 = 7.5 >> 8 de moyenne à cause de l’image.

      Voila.

    • J’ai un souci quand je rajoute ce script dans mon squelette article, plus rien ne s’affiche c’est tout blanc ?

      Une idée ?

    • Sur le principe, c’est vraiment très bien (10/10 !), mais j’ai aussi un pb à l’exécution php du calcul de la moyenne (quelles sont les variables utilisées ?).
      J’ai remarqué aussi qu’il y avait un pb sur le site JKA
      il affiche plusieurs fois la valeur par défaut.

    • Bien, après avoir revu le script :

      <strong>Note des visiteurs :</strong><br>
      <BOUCLE_moy_forqd(FORUMS){id_article}{0,1}>
      <?php $moyenne = <B_moy_for>(<BOUCLE_moy_for(FORUMS){id_article}{id_groupe=7}{plat}{"+"}>
      <BOUCLE_moy_note(MOTS){id_forum}>
      [(#TEXTE)]</BOUCLE_moy_note></B_moy_note>
      </BOUCLE_moy_for>)/[(#TOTAL_BOUCLE)]
      </B_moy_for>spacer<//B_moy_for>;
      ?>
      <img src="images/notes/<?php echo round ($moyenne); ?>.gif">
      </BOUCLE_moy_forqd>

      Ca marche impec chez moi : www.criticomatic.tk

    • alexnihilo

      Bonjour,

      chez moi, ce script ne calcule pas la moyenne. La référence à #TEXTE me renvoie le titre du message posté dans le forum. J’ai donc modifié le script en remplaçant #TEXTE par #TITRE. Et ça marche !

      au plaisir,

      a*

    • Merci pour cette contribution qui parait très intéressante, mais le seule problème c’est que je n’arrive pas à la faire fonctionner. Elle me parait incomplète. Vous n’expliquez pas comment proposer aux visiteurs le formulaire de notation.
      J’ai sûrement raté quelque chose, mais le code me parait un peu court pour ce qu’il fait.
      Merci de m’expliquer comment faire.

    Répondre à ce message

  • Maitre.sinh

    Salut

    J’essaie d’adapter le systeme de vote pour faire un « top ».

    j’ai donc crée une rubrique (48), dans laquelle je metterais mes articles (ou les visiteurs) qui seront soumis a votation.

    j’ai donc une page "top-kitsch) ou :

    -  ma boucle affiche tous les articles de la rubrique 48 ( top)

    -  a l’interieur :

    -  j’ai mis la boucle « afficher note » sous chaque article

    -  je rajoute la boucle « voter » a la suite

    Mais l’affichage de la note ne se fait pas : seul apparait un « 5 » mysterieux.

    Mon code adapté est ici :

    BOUCLE_articles_kitsch(ARTICLES)id_rubrique=48>

    [(#TITRE)]

    [(#TEXTE)]

    Note des visiteurs :
    <?php $moyenne = <B_moy_for>(<BOUCLE_moy_for(ARTICLES)
    {
    id_rubrique=48}{id_groupe=4}{plat}{"+"}>
    <
    BOUCLE_moy_note(MOTS){id_forum}>
    [(
    #TEXTE)]</BOUCLE_moy_note></B_moy_note>
    </BOUCLE_moy_for>)/[(#TOTAL_BOUCLE)]
    </B_moy_for>5<//B_moy_for>;
    ?>

    [(#FORMULAIRE_FORUM)]


    #logo_mot


    /B_note>

    Si vous avez une idée...

    Merci !

    Répondre à ce message

  • 1

    Tout ca c’est bien gentil, mais bon apres comment affiche tu le resultat des votes dans l’article ?

    • Pas sur de bien comprendre ta question, mais on va faire simple. Tu crée simplement la boucle forum habituelle, car c’est par la que les visiteurs s’expriment non ?

    Répondre à ce message

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