AccueilDernières imagesRechercherS'enregistrerConnexion

Forum de graphisme, codage et game design proposant des tutoriels, astuces, libres services et commandes dans les domaines de l'infographie amateur, de l'intégration web (HTML et CSS essentiellement) ainsi que dans la conception de RPG sur forum.

Le Deal du moment :
Manga Fire Force : où commander le Tome 34 Fire ...
Voir le deal
11.50 €

    Système + et - de la réputation revisité : Compteur de "J'aime"

    Anonymous
    Invité

    Dim 11 Aoû 2013 - 5:55

    Bonjour ou bonsoir, bonne nuit, peut-être ? ^^

    Pour mon troisième tuto, je vous propose un système de réputation complétement revisité !


    Introduction



    Vous vous souvenez du + et du - sur le côté des messages comme ici, sur Never-Utopia, et cette jolie barre verte pour les votes positifs et rouges pour les négatifs ? C'est pas très esthétique, pas très personnalisable, n'est-ce pas ? Oh et combien de fois on a oublié de voter après avoir lu un post trop long car il fallait remonter le sujet afin de retrouver nos petits + et nos petits - ?

    Pas très pratique tout ça. :hum: La logique voudrait qu'on puisse voter une fois le post lu et comme ils ne sont pas tous de la même longueur...

    Alors pour les feignants comme moi qui ont la flemme de remonter les sujets, je vais vous montrer comment positionner le système de réputation en bas du message juste au-dessus de la signature (pour celles et ceux qui ne l'ont pas déplacée dans les templates bien sûr). Mais ce n'est pas tout ! Nous allons supprimer ce + et ce - ainsi que cette barre impossible à personnaliser et les remplacer par un système de "J'aime" qui indiquera le nombre de votes positifs reçus.

    Notez que les votes négatifs ne seront plus pris en compte. Pour celles et ceux que cela pourrait gêner, il suffit de se dire que si tu n'aimes pas, tu votes pas. xD Vous vous exprimer en ne vous exprimant pas... (Désolé, je fatigue ! ^^) . C'est beaucoup moins "triste" que de savoir que des personnes n'aiment clairement pas ce qu'on a fait ou dit. Et oui, cela me fait de la peine de recevoir des appréciations négatives, que voulez-vous, je suis un grand sensible. *sort*

    Passons aux choses sérieuses. Voici, en images, ce à quoi vous pouvez vous attendre en suivant ce tutoriel :

    Exemple :

    Attention, il n'y a aucune garantie que ce tutoriel fonctionne si vous avez trop modifié le template viewtopic_body. Vous devez aussi avoir un compte fondateur sur un forum phpBB 2 pour pouvoir modifier le template qui nous intéresse et, bien sûr, avoir activé le système de réputation dans les modules.

    Je vous ai mis l'eau à la bouche ?
    *part se cacher*


    Le Tutoriel


    Javascript

    On va commencer par un copier/coller tout simple pour le début.

    Panneau d'administration > Modules > Gestion des codes Javascript.

    Vérifiez que vous avez activé et enregistré la gestion des codes Javascript. Puis créer un nouveau javascript, mettez le titre que vous voulez, cochez "Sur toutes les pages" ou "Sur les sujets", comme vous voulez, bien qu'en choisissant "Sur les sujets", j'ai eu l'impression que le code chargeait plus lentement alors qu'avec la première option, je n'ai rien remarqué.

    Ensuite collez ce code :

    Code:
    $(function(){
            $(".vote").each(function(){
            $(this).find(".vote-button:first a").html('<img src="ADRESSE DE VOTRE IMAGE POUR LE VOTE POSITIF" alt="Voter" title="Voter" />').click(function(){
            $.get($(this).attr("href"));
            $(this).parent().html('<img src="ADRESSE DE VOTRE IMAGE APPARAISSANT LORSQUE VOUS VOTEZ" alt="Vote enregistré" title="Vote engregistré" />');
            return!1
            });
            $(this).closest("tr.post").find("div.vote_pos").append($(this).find(".vote-button:first a")).append($(this).find(".vote-bar").length?' <div class="vote_count" title="Total des votes">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
            $(this).remove()
                      })
                    });
    Et validez. (Ce code JS a été fourni à plusieurs reprises par le staff de forumactif, je l'ai juste un peu adapté donc ne me demandez pas de le modifier, mes connaissances en JS sont quasi nulles contrairement au HTML et CSS où je me débrouille.)
    Je n'ai pas fourni les images donc vous devrez faire les vôtres, il suffira de remplacer les phrases explicatives en capitales dans le code JS par l'url de l’image correspondante. Ici, il s'agit d'une image cliquable du même genre que le "J'aime" de Facebook (ou ce que vous voulez, vous pouvez même remplacer le code de l'image par du HTML histoire de faire sans image pour ceux qui préfèrent le texte et une belle mise en forme via CSS, à vous de jouer avec votre créativité) et d'une autre image qui indique que vous avez cliqué dessus, comme un "J'aime" avec moins d'opacité par exemple.

    Faites attention aux tailles de vos images, elles devront toutes être de la même hauteur pour un alignement optimal (Pareil si vous changer les images par du HTML).


    Template



    Nous allons maintenant placer le système de réputation. Grâce au JS que nous venons d'installer la tâche va être grandement simplifiée, il suffira de mettre une div et une class là où nous souhaitons afficher nos "J'aime".

    Panneau d'administration > Affichage > Templates > viewtopic_body

    Repérez :

    Code:
    <!-- BEGIN switch_signature -->
    et placez

    Code:
    <div class="vote_pos"></div>
    juste au-dessus pour placer le système de vote au-dessus de la signature. Si vous avez bouger la signature, repérez plutôt :

    Code:
    <div>{postrow.displayed.MESSAGE}</div>
    et placez le code que je vous ai donné plus haut, juste après cette partie, cela devrait afficher les votes juste en-dessous des messages.

    Enfin, pour éviter qu'au chargement de la page la bar de vote s'affiche quelques secondes avant que le JS prenne le relais, repérez ceci :

    Code:
    <!-- BEGIN switch_vote_active -->
     <div class="vote gensmall">

    Et remplacez par :

    Code:
    <!-- BEGIN switch_vote_active -->
     <div class="vote gensmall" style="display: none">

    J'ai juste rajouté un display : none afin d'empêcher la bar d'être générée pour que cela fasse plus propre à l'affichage. :)


    CSS



    La dernière étape : la mise en forme via le CSS.

    Panneau d'administration > Affichage > Couleurs > Feuille de style CSS

    Collez ceci :

    Code:
    .vote_pos
    {
      width: 100%; /* permet de prendre toute la largeur du message */
      height: 30px; /* hauteur de toutes vos images à adapter selon les vôtres */
      margin-top: 10px; /* petite marge pour éviter que les votes se collent trop prêt du message */
      text-align: right; /* positionne le bouton de vote et le bouton de vote cliqué sur la droite du message */
    }
    .vote_count /* personnalise le nombre des votes */
    {
      float: left; /* oblige le total des votes à bien s'afficher à gauche des messages, aligné avec le bouton de vote cliquable */
      width: 30px; /* largueur de l'image de fond qui s'affiche sous le total des votes */
      height: 30px; /* hauteur de toutes vos images à adapter selon les vôtres, doit être identique au height du vote_pos */
      padding-top: 6px; /* à modifier selon votre image de fond afin de bien positionner vos chiffres sur la dite image */
      color: #000000; /* la couleur des chiffres du total des votes d'un message */
      font-size: 10px; /* la taille des chiffres du total des votes d'un message */
      font-weight: bold; /* met en gras les chiffres du total des votes d'un message */
      text-align: center; /* centre les chiffres du total des votes d'un message par rapport à l'image de fond si tant est que vous l'ayez bien centrée lors de sa création */
      background-image: url("ADRESSE URL DE VOTRE IMAGE DE FOND DES CHIFFRES DU TOTAL DES VOTES");
      background-repeat: no-repeat; /* empêche que l'image de fond se répète */
    }

    Lisez bien les annotations entre /* */ pour personnaliser le code selon vos besoins, puis supprimez-les, elles risquent de vous empêcher de valider votre css à cause des apostrophes (ou des accents, des virgules, je ne sais plus, je sais juste que j'ai déjà eu des bogs et c'étaient les annotations les responsables ! ><).

    Validez et vous voilà avec un tout nouveau système de réputation !


    Merci d'avoir lu ce tutoriel jusqu'au bout !

    Enfin un crédit pour Never-Utopia serait grandement apprécié si vous utilisez ce système de votes pour l'aide que ce tutoriel vous a - peut-être - apporté et pour le temps que j'ai passé à rédiger ce sujet et à me prendre la tête avec ce JS qui ne fonctionnait pas au départ ! :wall: 

    A vous les studios ! Very Happy

    P.S. : Vous pouvez observer à peu près le même système que je propose dans ce tutoriel sur ce forum officiel de FINAL FANTASY XIV. C'est tout en bas. Si vous avez un compte et êtes connecté, un bouton "Jaime" s'affiche à droite et le vote s'ajoute presque instantanément aux chiffres entre parenthèses à côté du pouce relevé. ;)Je fais de la pub en passant pour le jeu. xD

    Merci de laisser un message pour donner vos impressions, commentaires et/ou remerciements ^^
    Si vous avez des problèmes avec ce LS, venez poster ici.


    Dernière édition par Onyx le Sam 5 Mai 2018 - 23:33, édité 7 fois (Raison : Petite amélioration)
    Nami'
    Nami'
    FémininAge : 25Messages : 11

    Sam 24 Aoû 2013 - 11:46

    Merci! Very Happy x)
    Offrande
    Offrande
    FémininAge : 32Messages : 194

    Ven 18 Oct 2013 - 3:29

    Bonjour, 

    Vraiment génial ce tutoriel, extra sa vas faire du changement sur mon forum et puis je trouve cela vraiment très orignal comme idée surtout pour les personnes qui compte leurs réputations comme des Pts ou autre sur leurs forum tout comme moi ! 

    En tout cas, merci énormément du partage! :ange:
    Anonymous
    Invité

    Ven 18 Oct 2013 - 14:09

    Je vous en prie ! :)
    Sparrow-style
    Sparrow-style
    FémininAge : 39Messages : 32055

    Sam 19 Oct 2013 - 13:18

    Oh c'est génial ça ! Bon je connaissais car Threax (ex staff FDF et fondateur de l'annuaire) l'avait mis en place sur le FDF justement, et je trouvais ça vraiment bien, donc c'est super que tu aies pu en faire un tutoriel, merci beaucoup ! D'ailleurs il est probable que je l'utilise pour N-U ^^



    sign
    Anonymous
    Invité

    Sam 19 Oct 2013 - 21:42

    Je serai ravi si ce tuto est utilisé pour une prochaine version de N-U ! Very Happy
    damon w salvatore
    damon w salvatore
    FémininAge : 36Messages : 109

    Ven 8 Nov 2013 - 13:23

    Merci
    .SaKou.
    .SaKou.
    FémininAge : 28Messages : 57

    Mer 13 Nov 2013 - 14:44

    merci =)



    Système + et - de la réputation revisité : Compteur de "J'aime" 1351184429-smile
    Grande
    Grande
    FémininAge : 36Messages : 207

    Dim 17 Nov 2013 - 2:41

    Merci



    Système + et - de la réputation revisité : Compteur de "J'aime" 171074gwenj10
    Deadpoolio
    Deadpoolio
    MasculinAge : 34Messages : 277

    Lun 25 Nov 2013 - 10:49

    Mot magique: Merci.
    hurudy
    hurudy
    MasculinAge : 43Messages : 40

    Mar 3 Déc 2013 - 10:04

    Oh merci pour cette astuce , je vais tester :)
    FeliceFelicis
    FeliceFelicis
    FémininAge : 33Messages : 89

    Mar 10 Déc 2013 - 18:12

    Merlin!  Je crois que ça fait 1010989 ans que je cherche ça1! WOOOOOW :DJ'espère que ça va fonctionner UUHHH!

    MERCI MERCI MERCI

    EDIT
    *Évidemment j'ai pas switch_signature_blabla dans mes templates *pleure**
    Patou972
    Patou972
    FémininAge : 45Messages : 175

    Lun 23 Déc 2013 - 1:32

    wow bonne idée, merci beaucoup
    Lakxi
    Lakxi
    FémininAge : 31Messages : 40

    Ven 27 Déc 2013 - 17:16

    merci beaucoup pour ce code Very Happy
    Grande
    Grande
    FémininAge : 36Messages : 207

    Dim 12 Jan 2014 - 2:16

    Merci



    Système + et - de la réputation revisité : Compteur de "J'aime" 171074gwenj10
    Enidech
    Enidech
    MasculinAge : 33Messages : 39

    Sam 18 Jan 2014 - 15:07

    Bonjour !

    C'est génial ! Le rendu sur ton exemple est superbe, j'adore.

    Cordialement, Dech.
    Dragma
    Dragma
    MasculinAge : 28Messages : 65

    Sam 1 Fév 2014 - 21:08

    Merci beaucoup pour ce tuto, c'est vraiment original :)

    Jacoon
    Jacoon
    FémininAge : 27Messages : 147

    Dim 23 Mar 2014 - 21:39

    Merci.
    Ellen Lesley
    Ellen Lesley
    FémininAge : 109Messages : 79

    Dim 25 Mai 2014 - 0:03

    Merci !
    Doupi
    Doupi
    FémininAge : 35Messages : 63

    Mer 28 Mai 2014 - 13:48

    Voilà qui me sera utile
    Doupi
    Doupi
    FémininAge : 35Messages : 63

    Mar 3 Juin 2014 - 18:17

    Je vais essayer de l'adapter chez moi, merci  cheers 
    avatar
    Lupa
    FémininAge : 27Messages : 183

    Lun 9 Juin 2014 - 16:00

    Oh, depuis le temps que je cherchais ce système ! Merci beaucoup *-*



    To die would be an awfully big adventure... ~ Peter Pan, James M. Berrie.
    skaera22
    skaera22
    MasculinAge : 28Messages : 72

    Dim 29 Juin 2014 - 19:56

    merci
    Raymanou
    Raymanou
    MasculinAge : 31Messages : 49

    Dim 29 Juin 2014 - 23:53

    Je te remercie c'est vraiment gentil Very Happy
    Snapforum
    Snapforum
    MasculinAge : 36Messages : 23

    Mar 15 Juil 2014 - 10:49

    Merci :)
    Contenu sponsorisé


      La date/heure actuelle est Mar 19 Mar 2024 - 3:08