0251 / 590 837 15
info@a-coding-project.de

PHP: Gravatar API ansteuern

Gravatar monsterid

Gravatar ist ein Dienst, der für ganz viele Mail-Adressen Bilder gespeichert hat, welche man dann auslesen kann. So ist das zum Beispiel auch in WordPress Blogs. Dort wird oft (wie auch bei mir) bei den Usern ein Bild angezeigt. Dieses Bild ist auf Gravatar.com gespeichert und in allen Blogs gleich.

Gravatar kann man aber auch an anderen Stellen verwenden, um so zum Beispiel in Communities das Profil-Bild automatisch zu setzten.

Das ist auch nicht wirklich schwer. Man muss nur die Bild-Adresse herauskriegen und das geht so:

  1. Aus der Mail-Adresse einen MD5 Hash erstellen (aus info an stevieswebsite.de wird 20f8e8b51e470855d7bbbe21aa84eec3).
  2. Den Hash so in die Adrese einfügen: http://www.gravatar.com/avatar/{md5hash}.jpg

Nun kann man auch noch die Größe definieren. Dabei übergibt man einfach den Parameter s (Anzahl an Pixeln):

http://www.gravatar.com/avatar/20f8e8b51e470855d7bbbe21aa84eec3.jpg?s=100

Wenn nun eine Mail-Adresse doch noch nicht vorhanden ist, kann man mit dem Parameter d noch Defaultbilder angeben. Dort gibt es folgendes zur Auswahl:

  • Url des Defaultbildes
  • identcon (Ich nenn es mal Mosaik-Grafiken)
  • monsterid – Bilder von Monstern (die gibt es in diesem Blog)
  • wavatar – Komische andere Figuren
  • 404 – Kein Bild wird geladen

In der Überschrift steht schon PHP, also müssen wir es auch verwenden 😉 Denn das ganze kann man natürlich schön in einer PHP-Funktion packen. Das sieht dann so aus:

<?PHP
  function getGravatarUrl($mail,$size,$default){
    return  "http://www.gravatar.com/avatar/".md5($mail).".jpg?s=".$size."&d=".urlencode($default);
  }
?>

Und das ist der Aufruf:

<?PHP
  echo "<img src="".getGravatarUrl("info@stevieswebsite.de",100,"monsterid")."" />";
?>

Kommentare

BlackY schrieb am 02.04.2013:

Danke Stevie, endlich was brauchbares gefunden. Ich finde ja die Monster cool und habe sie mal bei mir eingebaut. Danke für die Anleitung. MFG :-)

Was macht ein gutes Blogsystem aus? schrieb am 24.05.2013:

[...] den Kommentaren soll ein Foto des Autors angezeigt über Gravatar angezeigt werden können. Da Gravatar aber datenschutzmäßig ein paar Probleme hat, sollte es [...]