Wordpress后台可以设置默认头像(如用户没有注册Gravatar,则显示通用标志),Typecho后台则没有,我们可以通过修改代码实现同样的效果。
前提是你的主题是通过默认函数调用评论列表:
<?php $comments->listComments(); ?>
确保主题文件comments.php中有上面的函数。
然后开始修改/var/Typecho/common.php第937行;
public static function gravatarUrl($mail, $size, $rating, $default, $isSecure = false)
{
$url = $isSecure ? 'https://secure.gravatar.com' : 'http://www.gravatar.com';
$url .= '/avatar/';
if (!empty($mail)) {
$url .= md5(strtolower(trim($mail)));
}
$url .= '?s=' . $size;
$url .= '&r=' . $rating;
$url .= '&d=' . $default;
return $url;
}
修改为:
public static function gravatarUrl($mail, $size, $rating, $default, $isSecure = false)
{
$url = $isSecure ? 'https://gravatar.loli.net/avatar/' : 'http://gravatar.duoshuo.com/avatar/';
if (!empty($mail)) {
$url .= md5(strtolower(trim($mail)));
}
$url .= '?s=' . $size;
$url .= '&r=' . $rating;
$url .= '&d=mm' . $default;
return $url;
}
其中d的值就是用来设置默认头像的:
d=mm 神秘人
d=identicon 抽象图形(自动生成)
d=wavatar Wavatar(自动生成)
d=monsterid 小怪物(自动生成)
d=retro 复古(自动生成)
测试一下QQ头像