WordPress判断Email是否有Gravatar头像

     在WordPress中,评论者的头像大都是使用Gravatar的头像服务,评论者的头像是通过Emai…

     在WordPress中,评论者的头像大都是使用Gravatar的头像服务,评论者的头像是通过Email地址来调用的,有些用户没有Gravatar头像,那么Gravatar会显示默认头像。

     在某些情况下,这并不是你想要的,相反,你可能想知道,你得到的是一个真正的Gravatar或者它只是默认的。如:

  • 在用户没有gravatar头像的情况下,你想直接显示本地的默认头像
  • 提醒没有头像的用户添加一个Gravatar头像,而不去打扰已经有头像的用户

     我们可以通过以下代码来验证某个Email地址是否有Gravatar头像:

$email = 'abc@example.com';  // 要验证的Email地址
$hash = md5(strtolower(trim($email)));
$uri = 'http://www.gravatar.com/avatar/' . $hash . '?d=404';
$headers = @get_headers($uri);
if (!preg_match("|200|", $headers[0])) {
  echo '没有头像';
} else {
  echo '有头像';
}

参考文章

Checking for the Existence of a Gravatar

— 完 —

类别:WordPress开发

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT