SPIP - Contrib

[ar] [en] [es] [fr] [it]



Accueil du site > Administration > Le Couteau Suisse

Insérer des smileys (ou petites frimousses)

un outil souriant ;-)

mercredi 27 décembre 2006, par Patrice Vanneufville, Sylvain. Dernier ajout jeudi 31 mai 2007

Toutes les versions de cet article :


Idéal pour les forums, cet outil du Couteau Suisse peut s’appliquer dans tous vos textes publiés.


Introduction

Cet outil est une fonctionnalité du plugin Le Couteau Suisse que vous pouvez trouver ici : Le Couteau Suisse. Pour avoir accès à la traduction des smileys, il vous faut donc avoir préalablement installé ce plugin.

Ensuite, une fois l’outil Smileys activé sur la page d’administration du plugin en espace privé, vous n’aurez plus qu’à écrire les smileys "en texte" pour qu’ils soient remplacés par la jolie frimousse correspondante dans tous vos textes.

Cette fonctionnalité est aussi très utile dans les forums. Lorsque le message est prévisualisé, tous les smileys sont traduits et l’auteur peut voir et vérifier aussitôt les images de remplacement dans son texte.

Notes
- tous les textes de SPIP sont examinés pour trouver des racourcis de smileys (titres, articles, brèves, forums, etc.).

Pour les spécialistes

- Le pipeline utilisé est : pre_typo
- Le fichier inclus est : outils/smileys.php
- Le dossier des images est : img/smileys

Un petit exemple de code obtenu pour le remplacement de " :->" (le petit diablotin) et qui peut ressembler à la forme suivante :

<img width="21" height="20" src="/plugins/couteau_suisse/img/smileys/diable.png" class="no_image_filtrer" title=":->" alt=":->"/>

le texte situé entre les balises <html> et </html>, <code> et </code>, <cadre> et </cadre>, <frame> et </frame>, <script> et </script>, <acronym> et </acronym> ou <cite> et </cite> est protégé : aucune frimousse n’y sera insérée.

La précaution "no_image_filtrer" empêche Spip de faire une quelconque modification à cette image. Le Couteau Suisse ajoute automatiquement les attributs width et height, et par soucis d’accessibilité, Les attributs alt et title ont été remplis par l’équivalent en texte de la petite frimousse.

Le calcul des frimousses est effectué en paralèlle du calcul de la page par Spip. Par exemple, un appel avec var_mode=calcul ou var_mode=recalcul provoque une réinitialisation complète des images.

Visualisation

Il vous est possible de visualiser les images en place en tapant l’adresse suivante [1] :

http://www.monsite.example/plugins/couteau_suisse/img/smileys

Mais voici pour vous un tableau récapitulatif :

Conseil : il vaut peut-être mieux de préciser à vos rédacteurs ou visiteurs les codes qu’ils peuvent utiliser dans leurs messages pour faciliter ensuite le filtrage des smileys. Par exemple, pour l’utilisation sur un forum, dans le squelette "forum.html" ajoutez le tableau récapitulatif ci-dessus.

La balise #SMILEYS

Lorsque les Smileys sont activés, vous disposez d’un autre système pour montrer à vos rédacteurs les raccourcis disponibles : la balise #SMILEYS. Cette balise se place dans vos squelettes à proximité des champs de rédaction des messages de forum par exemple.

La syntaxe est simple, la balise accepte 3 arguments (tous facultatifs, et dans l’ordre que vous voulez) :

- un chiffre, représentant le nombre de colonnes du tableau produit
- ’titre’, indiquant que l’on veut un titre au tableau. En français ce titre est : "Frimousses disponibles :"
- ’liens’, indiquant que l’on veut des liens insérant les smileys dans l’éditeur de texte (id="textarea_1").

Exemples :

- [(#SMILEYS)] : construit un tableau de 8 colonnes (8 est le chiffre par défaut), sans titre et sans liens.
- [(#SMILEYS{15})] : construit un tableau de 15 colonnes, sans titre et sans liens.
- [(#SMILEYS{1, liens})] : construit une colonne sans titre de smileys cliquables.
- [(#SMILEYS{8, titre})] : construit un tableau de 8 colonnes et ajoute un titre [2].
- [(#SMILEYS{0, titre, liens})] : construit une ligne de smileys cliquables, surmontée d’un titre.

Par défaut, voici l’aspect du tableau rendu par la balise #SMILEYS sans arguments :

Avec la syntaxe #SMILEYS{16, titre} :

Avec la syntaxe #SMILEYS{0, liens} :

Notez que sur l’exemple ci-dessus, une seule occurence de chaque frimousse a été représentée : même si tous les raccourcis restent disponibles, l’utilisateur n’a plus le choix dans celui qui est inséré dans son texte, il choisit simplement une image.

Les styles css vous permettent de modifier facilement l’aspect de ce tableau afin de l’adapter au style de vos page. Le tableau est de style "table class="spip cs_smileys smileys"", la ligne de titre : "tr class="row_first"", les lignes impaires : "tr class="row_even"" et les lignes paires : "tr class="row_odd"".

P.-S.

Cette contrib est une amélioration et une adaptation pour le Couteau Suisse de la contribution originale Smileys de Sylvain.

Notes

[1] Exemple d’un site SPIP placé à la racine

[2] ce titre est traduit dans les chaînes de langue grâce au code ’smileys_dispos’ que l’on peut trouver dans les fichiers lang/cout_*.php.


Répondre à cet article

  • Bonjour, Je me suis aperçu, par hasard, qu’il y avait un petit conflit entre Smiley et squelette_par_mot_cle. En effet quand ce dernier était installé, la balise #SMILEYS ne s’affichait pas. Toutefois il semble que ce probleme soit réglé dans les derniers développement que l’on peut téléchanger sur la zone

    Mais bon, je signale quand même, on sait jamais

    Répondre à ce message

    Retour au début des forums

  • Quelle est la bonne méthode pour changer les images des frimousses (pour en ajouter par exemple un gif animé)

    Merci

    Répondre à ce message

    • Insérer des smileys (ou petites frimousses) 16 juin 2007 04:00, par Pat

      plusieurs méthodes :
      - remplacer les images d’origine (img/smileys)
      - toucher au code (outils/smileys.php)
      - utiliser l’outil ’chatons’ qui permet d’ajouter n’importe quelle image automatiquement reconnue.

      Attention cependant, les gifs animées sont déconseillées en général. ça peut défigurer une page et fatiguer l’oeil...

      Répondre à ce message

    Retour au début des forums

  • #SMILEYS : j’y arrive pô...

    1er juin 2007 18:33, par FH

    Heu...

    En fait, lorsque je veux insérer cette balise #SMILEYS (avec les différentes syntaxes proposées ci-dessus), par exemple dans le squelette forum.html, ça me donne depuis un appel sur l’espace public la page d’erreur suivante :

    Fatal error : Call to undefined function : interprete_argument_balise() in d :\informatique\edition_web\franne2004\spip\ecrire\data\couteau-suisse\mes_fonctions.php on line 33

    Si une bonne âme passe par là... merci d’avance !

    je suis sur SPIP 1.9.1, plugin jQuery activé

    Répondre à ce message

    • #SMILEYS : j’y arrive pô... 2 juin 2007 03:02, par Patrice Vanneufville

      Ah oui ! Pardon pour ce petit bug, la balise #SMILEYS n’était pas compatible avec SPIP 1.91. C’est à présent corrigé !

      Répondre à ce message

      • #SMILEYS : j’y arrive pô... 2 juin 2007 21:02, par FH

        Super, merci bien :-)

        Une petite remarque supplémentaire, si tu me permets : les deux frimousses qui pleurent ne s’affichent pas (en tout cas chez moi), lorsque j’utilise la version cliquable de la balise #SMILEYS...

        En effet, cela insère les textes :’-)) et :’-(, qui ne se traduisent pas par l’image correspondante... alors qu’avec :'-)) et :'-(, ça marche.

        C’est une question de versus '... c’est possible, sans abuser, de remplacer le premier par le deuxième ?

        A +

        Répondre à ce message

    Retour au début des forums

  • Insérer des smileys (ou petites frimousses)

    30 mai 2007 07:28, par bjousse

    bonjour,

    je dois être un peu bourrin, je n’arrive pas à utiliser #SMILEYS.....

    as-tu 2 ou 3 lignes d’exemple...

    merci

    Répondre à ce message

    Retour au début des forums

  • Super !

    5 février 2007 09:35, par Sylvain

    Merci d’avoir repris et intégré ma vielle petite contribution ... et ajouté le smiley manquant en gardant le même style !!!

    |-)

    Répondre à ce message

    • Super ! 5 février 2007 10:01, par Sylvain

      je suis en train de tester ces Tweaks, pour les smileys apparemment, vous n’avez pas trouver comment faire fonctionner le smiley -> :’-)

      je suppose un problème de caractère :
      - le clavier écris :'-)
      - spip :’-)

      j’avais essayé avec un fichier mes_fonctions.php en UTF-8 ... mais non

      ... merci de m’avoir cité, en tant "auteur" de ce tweak ... m’enfin c’était pas la peine

      Répondre à ce message

      • Super ! 6 février 2007 03:39, par Patrice Vanneufville

        le smiley -> :’-)

        c’est qu’il a été tout simplement oublié ! c’est maintenant réparé... C’eût été dommage.

        Rien n’empèche d’ajouter de nouveaux raccourcis. Le code du tweak est libre, tu peux le modifier aussi toi-même sous SVN.

        merci de m’avoir cité, en tant « auteur » de ce tweak

        qd même c la moindre des choses. les bonnes idées ça n’a pas de prix ;-)

        Répondre à ce message

      • Super ! 12 février 2007 00:41, par Patrice Vanneufville

        le clavier écris :'-)
        spip :’-)

        en principe, le tweak des smileys sont traités en pre_typo, l’apostrophe est encore inchangée à ce niveau, non ?

        Répondre à ce message

    • Super ! 6 février 2007 03:33, par Patrice Vanneufville

      Oui, je les ai trouvés très mimis ! Mais j’ai pas réussi à trouver d’où tu les tenais...

      Répondre à ce message

    Retour au début des forums



Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | Charte et vie SPIP-Contrib | SPIP | L'autre.net