默认的Gravatar是在是太难看了,而且还会经常宕机,所以网上最常用的方法是用QQ头像替换默认的gravatar头像。于是我在网上苦苦搜索了好几天,终于找到了适合的方法,现在记录一下代码。
mail; echo '
'; ?>
用以上代码替换comment.php里面默认的gravatar代码即可。
下面还有一个更完善的办法,因为当访客使用QQ邮箱评论时会显示QQ头像,可是如果使用的不是QQ头像,就会显示一个QQ企鹅头像
首先,将下面的代码丢到funtions.php文件当中。
//获取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;
}
其次,再将下面的代码复制到需要放头像的页面,通常是comments.php页面和sidebar.php页面。
把里面的
gravatar('100', ''); ?>
改为:
mail; $imgUrl = getGravatar($email);echo '
'; ?>
该代码可以实现的功能:当客户评论时用的不是QQ邮箱,则显示gavatar头像,否则则显示QQ头像。完美!
扩展用途:
站长在其他位置显示头像的地方
author->gravatar(500); ?>
改为:
author->mail; $imgUrl = getGravatar($email);echo '
'; ?>
强烈推荐:

实现typecho评论框输入QQ号码自动获取QQ头像和昵称
玩不溜,花了不少时间才实行了这个功能,网上找打的都是wordpress比较多,结构不是很熟悉,又用不了,看看评论效果把 输入QQ就自动获取昵称,邮箱和头像,可能还有....
!
发表评论