Esto no es ningún secreto, de hecho viene en su propia página, pero es bastante interesante:
- La url base es http://www.gravatar.com/avatar.php.
- Para el parámetro gravatar_id se genera un hash para la dirección de correo. Este hash es el resumen MD5 de la dirección en minúsculas y sin espacios a los lados.
- Podemos añadirle un parámetro “size” o “s” para indicar el tamaño, entre 1 y 512. Si no se indica por defecto será 80.
- Añadimos el rating con el parámetro “rating” o “r”. Puede ser g, pg, r o x. Si no se añade se asumirá g.
- Se agrega la ruta de la imagen por defecto. Esta ruta será la imagen que se mostrará cuando no haya avatar en Gravatar. Este campo puede tener ciertos valores (identicon, monsterid o wavatar) que producirán un avatar dinámico. Si no se especifica se mostrará la G azul de Gravatar.
Con esto nos podemos hacer una función como la siguiente:
function gravatar($email, $size = NULL, $rating = NULL, $default = NULL)
{
$base = 'http://www.gravatar.com/avatar.php?gravatar_id=';
$base.= md5(trim(strtolower($email)));
if($size != NULL)
$base.= '&s='.$size;
if($rating != NULL)
$base.= '&r='.$rating;
if($default != NULL)
$base.= '&d='.urlencode($default);
return $base;
}
Aunque también hay una clase en PHP Classes que podemos usar para generar las rutas de los avatares.