Para aquellos que no conozcan Gravatar, es un avatar reconocido globalmente, esto que un servicio que ofrece un avatar único y global independientemente de donde publiques tu comentario.

Para poder disfrutar de dicha funcionalidad debemos de registrarnos en http://es.gravatar.com/. Una vez registrado en ella podrás configurar las distintas cuentas de correo de las que dispongas y una imagen que será mostrada cuando esta cuenta sea usada.

Una vez realizada esta introducción, lo siguiente es adaptar nuestro blog a que use un único avatar global.

Una de las mejores soluciones que hay de blog en el mercado (y sobre todo que es gratuita) para Magento es la extension de AheadWorks. Esta extensión cumple con todo lo necesario para montar tu blog en Magento (multistoreview, comentarios, entradillas), pero no incluye la posibilidad de poder poner un Avatar dentro de los comentarios del blog. Por este motivo escribimos este post.

El primer paso es localizar que plantilla está siendo utilizada para mostrar los comentarios realizados en la entrada del post. Analizando la extensión de AheadWorks , podemos localizarlo en app/design/frontend/mipaquete/miskin/template/aw_blog/post.phtml

Después de los comentarios de Magento, añadiremos la siguiente función la cual hemos sacado de la web de Gravatar.

* Get either a Gravatar URL or complete image tag for a specified email address.
*
* @param string $email The email address
* @param string $s Size in pixels, defaults to 80px [ 1 − 512 ]
* @param string $d Default imageset to use [ 404 | mm | identicon | monsterid | wavatar ]
* @param string $r Maximum rating (inclusive) [ g | pg | r | x ]
* @param boole $img True to return a complete IMG tag False for just the URL
* @param array $atts Optional, additional key/value attributes to include in the IMG tag
* @return String containing either just a URL or a complete image tag
* @source http://gravatar.com/site/implement/images/php/
*/
function get_gravatar( $email, $s = 80, $d = 'mm', $r = 'g', $img = false, $atts = array() ) {
$url = 'http://www.gravatar.com/avatar/';
$url .= md5( strtolower( trim( $email ) ) );
$url .= "?s=$s&d=$d&r=$r";
if ( $img ) {
$url = '=>$val )
$url .= ' ' . $key . '="' . $val . '"';
$url .= ' />';
}
return $url;
}
?>

El siguiente paso sería utilizar esta función en el sitio adecuado. Nos iremos al bucle que se encarga de mostrarnos os comentarios y lo reemplazamos por el siguiente:

getEmail();
//contiene el email de la persona que ha comentado.
//$default = Mage::getBaseUrl();
$size=40;//tamaño que va a tener la imagen del avatar
$grav_url = "http://www.gravatar.com/avatar/" . md5( strtolower( trim( $email ) ) ) . "?d=" . urlencode( Mage::getBaseUrl() ) . "&s=" . $size;
//echo Mage::getBaseUrl();
//echo $grav_url;
echo get_gravatar( $email,$size,'mm','g', true, array() );//Utilizamos la función definida anteriormente para mostrar dicho gravatar.
?>

El resultado sería este:
Gravatar en Magento
Podréis encontrar información acerca de las modificaciones realizadas en el siguiente enlace
http://es.gravatar.com/site/implement/images/php/

Por: @davidselo