在许多地方我们都需要用到头像,头像就像你在互联网上除了昵称以外的第二个标识~比如我的滑稽!
什么是 Gravatar
Gravatar 是一个 Globally Recognized Avatar(全球公认的头像),你只需要上传一次头像就创建了你的个人资料,以后当你在支持 Gravatar 的网站上参与互动时,只要提供你与这个头像关联的Email邮箱地址,就能够显示出你的Gravatar头像,一个邮箱地址对应一张头像图片
谁正在使用 Gravatar
程序员常去的 GitHub,以及wordpress 和 Typecho 等博客程序也都使用 Gravatar 作为评论系统的头像
通过邮箱获取地址
我有想法将十年之约官网重构,哈哈,前几天他们在群里说能不能不收集用户头像地址? 用了这么久的wordpress和Typecho,评论的时候都是使用邮箱来获取的头像,直接集成一下不就行了
/** * Get either a Gravatar URL or complete image tag for a specified email address. */function getGravatar( $email, $s = 96, $d = 'mp', $r = 'g', $img = false, $atts = array() ) { $url = 'https://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;}
直接调用输出的是图片地址,我们要用的话就用img标签输出一下
$email = '52o@qq52o.cn';$imgUrl = getGravatar($email);echo '';
图片的地址并不唯一,还有什么secure.gravatar.com的也可以生成
Box-sizing: content-Box; overflow: visible; margin: 1em 0px; background-color: rgb(221, 221, 221); border: 0px; color: rgb(51, 51, 51); white-space: normal;"/>
十年之约的成员有些可能使用的是QQ邮箱,没有Gravatar头像,所以加了一个判断如果是QQ邮箱就获取QQ头像
//获取Gravatar头像 QQ邮箱取用qq头像function getGravatar($email, $s = 96, $d = 'mp', $r = 'g', $img = false, $atts = array()){ preg_match_all('/((\d)*)@qq.com/', $email, $vai); if (empty($vai['1']['0'])) { $url = 'https://www.gravatar.com/avatar/'; $url .= md5(strtolower(trim($email))); $url .= "?s=$s&d=$d&r=$r"; if ($img) { $url = ' $val) $url .= ' ' . $key . '="' . $val . '"'; $url .= ' />'; } }else{ $url = 'https://q2.qlogo.cn/headimg_dl?dst_uin='.$vai['1']['0'].'&spec=100'; } return$url;}原文链接:https://www.f2er.com/wordpress/67690.html