SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 341 visiteurs en ce moment

Accueil > Interactivité, échanges > Profil, avatars > hAvatar > hAvatar

hAvatar

20 janvier 2010 – par davux – 10 commentaires

6 votes

hAvatar est un plugin qui sait retrouver automatiquement sur leur page personnelle l’avatar des auteurs SPIP ou des personnes qui laissent des messages de forum. Il est basé sur le système des microformats, plus précisément des hcards.

Les microformats

Lorsqu’on écrit du code HTML, les microformats sont une nomenclature de nommage pour les classes de vos éléments. Ce nommage standardisé permet de signaler de façon formelle le type de certaines informations contenues dans vos pages, afin que cette information puisse être extraite automatiquement et mise à profit. Les microformats sont donc un élément de construction du web sémantique.

Une des facettes les plus répandues des microformats est hcard. Cette norme permet de spécifier particulièrement des informations de contact pour des personnes ou des organismes. Par exemple :

Dans cet exemple, les classes vcard, fn, photo et url correspondent à des noms standards définis dans la spécification hcard, qui vont permettre à certains outils d’extraire et interpréter les informations correspondantes. Le plugin hAvatar est l’un de ces outils.

Fonctionnement du plugin

Lorsqu’un auteur, que ce soit dans son profil SPIP ou dans un message de forum, indique une URL pour son site web, le plugin va la visiter et y chercher la ou les hcards présentes, puis les parcourir l’une après l’autre jusqu’à en trouver une qui fournisse une photo.

Concrètement, le résultat est un peu magique : le site SPIP affiche l’avatar ou la photo d’une personne en se basant uniquement sur l’URL qu’elle vient de donner ou qu’elle a configurée dans son profil. De plus, cette URL peut être actualisée par la personne après coup, et le site SPIP prendra en compte les changements.

Ce plugin a un fonctionnement identique au plugin Gravatar, tant dans sa finalité (récupérer de façon automatisée l’image d’un auteur) que dans son mode de fonctionnement et les outils qu’il fournit. Il met notamment en cache pour un petit moment l’image récupérée, afin de ne pas devoir visiter la page de l’auteur à chaque affichage.

Comment dois-je modifier mon site pour que ma photo soit reconnue ?

La réponse courte est sur le site des microformats. Une autre formulation :
-  Il doit y avoir un élément de class="vcard" autour de l’info d’identité qui apparaît très certainement sur votre site.
-  Dans ce bloc, il doit y avoir votre nom quelque part, avec class="fn" (formatted name, nom mis en forme... votre nom entier quoi)
-  Dans le même bloc, il doit y avoir aussi votre photo, avec class="photo"

Le code montré plus haut est un bon exemple.

Affichage dans l’espace privé

À l’instar de Gravatar, le plugin affiche un second bloc d’image sous le logo standard de l’auteur, avec le titre « hAvatar de l’auteur ».

Utilisation en tant que webmestre

Le plugin propose plusieurs méthodes pour afficher des avatars :


-  La balise #LOGO_AUTEUR

C’est la méthode privilégiée pour utiliser le plugin hAvatar dans le code des squelettes. Le plugin étend la balise #LOGO_AUTEUR afin que celle-ci renvoie l’avatar associé à la carte de visite de l’auteur sur son propre site, si l’auteur n’a pas déjà un logo dans SPIP.

Mieux, vous pouvez utiliser la balise #LOGO_AUTEUR dans les forums et pétitions. Elle utilisera alors les informations de l’auteur si elles sont connues, et à défaut l’image prise à l’URL de son site si celui-ci a été renseigné.

#LOGO_AUTEUR n’affiche rien par défaut si il n’y a d’image ni sur le site de la personne, ni sur le site SPIP.

Vous pouvez ainsi substituer votre image par défaut en écrivant dans votre squelette

  1. [(#LOGO_AUTEUR||sinon{#CHEMIN{havatar.png}})]


-  La balise #HAVATAR

Cette balise renvoie uniquement l’image de la carte de visite récupérée sur l’URL fournie en argument. Elle permet donc d’ignorer l’existence d’un logo et de toujours forcer l’image prise sur le site de la personne, au détriment du logo de l’auteur SPIP. Cette balise possède trois arguments :

  • l’adresse du site
  • la taille de l’image à afficher (facultatif, 80 pixels par défaut)
  • l’image par défaut si aucune vignette n’est récupérée (facultatif)


-  Le modèle #MODELE{havatar}

Le modèle #MODELE{havatar} fonctionne comme la balise #LOGO_AUTEUR ci-dessus, et la complète, en affichant le logo de l’auteur s’il est présent, sinon l’image récupérée sur le site de l’auteur, sinon un avatar par défaut (havatar.png), en vignette carrée de 60 pixels de côté. Ce modèle est également microformaté pour pouvoir composer, à son tour, une hCard personnelle.

Ce modèle peut être utilisé à la fois à l’intérieur et à l’extérieur d’une boucle AUTEURS. Par exemple, dans les commentaires, pour afficher la trombine de chaque personne ayant laissé un commentaire, qu’elle soit identifiée dans SPIP ou inconnue, on emploiera le modèle ainsi :

L’avantage du modèle est d’abord qu’il affiche toujours quelque chose, de façon formatée et donc homogène, mais aussi qu’il facilite une ré-utilisation des avatars en plusieurs endroits du site (trombinoscope, profil, hCard, commentaires, informations de session, etc.). Il est alors possible de réduire la vignette au cas par cas, en spécifiant la dimension voulue via le filtre |image_reduire{32}.


-  Le filtre |havatar

Ce filtre retourne le chemin complet (pris dans le cache local) de l’image tirée du site fourni en argument.

Exemple d’utilisation, l’adresse courriel peut être issue d’une boucle ou pas :

  1. <BOUCLE_havatar(AUTEURS)>
  2. <img src="[(#URL_SITE|havatar)]" alt="[(#NOM)]"[ title="(#NOM)"] />
  3. </BOUCLE_havatar>
  4.  
  5. ou
  6.  
  7. <img src="[(#VAL{http://toto.com/}|havatar)]" alt="Toto" title="Toto"] />

Télécharger

Comparaison entre les hcard et Gravatar.com

Les deux systèmes demandent aussi peu d’efforts l’un que l’autre, que ce soit pour chaque article rédigé, pour chaque commentaire écrit, ou en tant que webmestre du site SPIP. En revanche, les deux approches diffèrent du point de vue architecturel.

-  L’approche de Gravatar.com, bien que pratique, a pour gros défaut d’être entièrement centralisée, ce qui implique qu’en cas de panne temporaire ou de fermeture définitive du site, plus personne n’a d’avatar nulle part. Par ailleurs, l’entreprise responsable du « service » Gravatar.com possède maintenant une quantité de données faramineuse. Outre un nombre démentiel d’adresses mail, ces données incluent également, entre autres, les fréquences de visite de chacune des pages sur lesquels une image Gravatar est présente, par le biais des referrers. Le système de cache mis en place par certains systèmes utilisant Gravatar.com, dont le plugin Gravatar, permet certes de réduire ces deux effets, mais pas de les supprimer, ni de se débarrasser de cette architecture centralisée.

-  L’approche des hcards en revanche, et des microformats en général, suit le leitmotiv d’Internet (qui est aussi la raison de sa pérennité et de sa neutralité) : la décentralisation des données. En effet, chaque auteur est maître et responsable des données diffusées sur son site. Aucun risque de panne généralisée, donc, et aucune concentration de données à un seul endroit d’Internet.

Bibliothèque de fonctions utilisée

Sur le plan technique, ce plugin utilise la petite bibliothèque PHP hKit pour récupérer les données hcard sur la page considérée.

Voir en ligne : http://plugins.spip.net/havatar

Dernière modification de cette page le 26 septembre 2015

Retour en haut de la page

Vos commentaires

  • Le 18 août 2011 à 21:01, par gilcot En réponse à : hAvatar

    Aïe, aïe...
    En arrivant sur la page d’un visiteur depuis l’espace privé, j’ai trois fois

    Warning : simplexml_load_string() [function.simplexml-load-string] : Entity : line 1 : parser error : Start tag expected, ’<’ not found in ...../plugins/auto/havatar/inc/hkit.class.php on line 345

    puis, pour finir :

    Fatal error : Call to a member function asXML() on a non-object in ...../plugins/auto/havatar/inc/hkit.class.php on line 359

    Répondre à ce message

  • Le 22 août 2010 à 14:43, par Shnoulle En réponse à : hAvatar

    Juste un grand merci pour cette contrib.

    Tout à fait daccord sur le constat que gravatar n’à pas de norme ouverte. SI je pouvais instaler mon gravatar sur mon site, ca se saurait non ?

    • Le 22 août 2010 à 16:39, par davux En réponse à : hAvatar

      Je ne comprends pas la dernière phrase de ton message. Peux-tu préciser ?

    • Le 22 août 2010 à 17:04, par Shnoulle En réponse à : hAvatar

      Je disais jsuet que je ne peut pas installer gravatar sur mon site (passage obligé par le site de gravatar), tandis que avec le format vcard , si ;)

    Répondre à ce message

  • Le 20 janvier 2010 à 16:43, par Nicolas Hoizey En réponse à : hAvatar

    Comment faire si l’URL indiquée comporte des messages de forum, par exemple, avec des hCard pour chaque intervenant ?

    • Le 20 janvier 2010 à 17:25, par davux En réponse à : hAvatar

      hAvatar va chercher la première hcard avec photo qu’il trouve.

      Mais ça serait effectivement super si la spécification hcard permettait d’indiquer qu’une vcard désigne (ou ne désigne pas) l’entité concernée par la page. Je n’ai rien vu passer de tel dans la spec, mais si ça existe je modifierai hAvatar pour en tenir compte.

    • Le 20 janvier 2010 à 21:24, par gilcot En réponse à : hAvatar

      en même temps, les spécifications ne garantissent pas que l’image que tu prends est bien la bonne :-/

      je pense qu’il ne faut pas rechercher les photos de toutes les hcard du site, mais seulement ceux qui déclarent le même site... mieux, quand le mail correspond, c’est ce hcard qu’on prend même s’il n’y a pas de logo/avatar

    • Le 21 janvier 2010 à 00:27, par davux En réponse à : Détection de la hcard de la bonne personne

      en même temps, les spécifications ne garantissent pas que l’image que tu prends est bien la bonne

      Dans ce cas rien ne le garantit jamais, mais suivre une convention à un bout permet à ceux qui la suivent à l’autre bout de ne pas avoir de surprise. De toute façon la convention en question n’existe pas, donc peu importe. :)

      je pense qu’il ne faut pas rechercher les photos de toutes les hcard du site, mais seulement ceux qui déclarent le même site... mieux, quand le mail correspond, c’est ce hcard qu’on prend même s’il n’y a pas de logo/avatar

      Oui c’est une bonne idée. Il faut cependant garder en tête que :
      -  On ne mentionne pas toujours son URL dans sa hcard, et surtout si on est déjà sur la page en question.
      -  On ne veut parfois pas donner son mail en clair sur sa page perso, pour éviter le spam.

      Du coup, je vais voir à implémenter ton idée, tout en utilisant la première image si aucune correspondance d’URL ou de mail n’est trouvée.

    • Le 21 janvier 2010 à 00:57, par gilcot En réponse à : Détection de la hcard de la bonne personne

      Du coup, je vais voir à implémenter ton idée, tout en utilisant la première image si aucune correspondance d’URL ou de mail n’est trouvée.

      C’est tout à fait ce que je suggère : prendre la première photo présente ne doit se faire qu’en dernier recours... et ce ne sera pas faute d’avoir essayé...
      Si on veut aller plus loin, là où le truc sûr pour l’informatique (email puis url —parce-que ce dernier peut pointer sur l’entreprise et non le blog ou la page perso quand il s’agit d’une carte professionnelle ; j’ai vu le cas sur le site d’IBM—), on peut faire comme ferait un humain : chercher la correspondance de nom... (mais cela suppose que le même pseudo est utilisé pour laisser un commentaire et c’est pas gagné)

    Répondre à ce message

  • Le 20 janvier 2010 à 17:15, par davux En réponse à : hAvatar

    hAvatar va chercher la première hcard avec photo qu’il trouve.

    Répondre à ce message

Répondre à cet article

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mode portail Communiquant pour SoyezCréateurs

    29 septembre 2010 – 20 commentaires

    5e mode d’affichage de la page d’accueil, ce mode se distingue des autres par une animation proposant un fondu/enchaîné des logos des articles à la une. Zonage Configuration Zone d’entête Nom du site Slogan si plugin bandeau présent (...)

  • Configurer Sparkpost

    25 avril – 14 commentaires

    N’hésitez pas à relire le préambule de cette rubrique avant de créer un compte sur une plateforme tierce . Présentation Sparkpost est une société d’envoi de mailing https://www.sparkpost.com/ Sur les petits volumes ( <100.000 emails / mois), (...)

  • Plugin Logo SVG : pouvoir utiliser des logos SVG

    17 octobre – commentaires

    Le SVG est un format vectoriel donc très léger et redimensionnable sans pertes, mais SPIP ne l’acceptait pas sur les logos. Ce plugin comble ce manque. Comment ça fonctionne ? Vous installez ce plugin, vous l’activez, et c’est tout. Crédits Une (...)

  • Utilisez le framework Foundation dans vos squelettes !

    13 août 2013 – 58 commentaires

    Foundation est un framework CSS et Javascript très complet pour réaliser des sites sur une grille propre et homogène. Mais surtout, il permet de rendre un site responsive très facilement ! Ce plugin ajoute le framework Foundation sur l’espace (...)

  • LinkCheck : vérificateur de liens

    13 février 2015 – 65 commentaires

    Ce plugin permet de chercher et tester l’ensemble des liens présents dans les objets. Vous pourrez donc en quelques clics connaître les liens brisés ou défectueux qui se sont immiscés dans le contenu de votre site SPIP. La vérification s’effectue en (...)

Ça spipe par là