在某一天你遇见我.
O泡.

Typecho后台评论头像不显示的主要原因就是Gravatar头像源被墙

解决办法很简单,只需要改一行代码

打开var/Typecho/Common.php,找到下面的代码,大概在836行。(或者直接搜索(public static function gravatarUrl))

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://dn-qiniu-avatar.qbox.me/avatar/';

if (!empty($mail)) {
$url .= md5(strtolower(trim($mail)));
}

$url .= '?s=' . $size;
$url .= '&r=' . $rating;
$url .= '&d=' . $default;

return $url;
}

另外一个修改方法

在config.inc.php中加入

define('__TYPECHO_GRAVATAR_PREFIX__', 'https://gravatar.loli.net/avatar/');

2023年01月06日