最近打开博客发现 Gravatar 图像总是无法加载,尝试访问其他博友的网站,发现也是一样。估计是 Gravatar 源又被墙了,之前有看过一篇文章说切换 Gravatar 国内源,当时博客正常,也就懒得折腾。看来这次势在必行了。
话不多说 ,进入网站后台在网站目录 /var/Typecho/ 中找到 common.php
然后编辑,大概在 930 行左右,替换成下面代码后保存即可。
copy
- /**
- * 获取QQ头像,如果失败,获取国内源Gravatar头像
- *
- * @param string $mail
- * @param int $size
- * @param string $rating
- * @param string $default
- * @param bool $isSecure
- * @return string
- */
- public static function gravatarUrl($mail, $size, $rating, $default, $isSecure = false)
- {
- $reg = "/^\d{5,11}@[qQ][Qq]\.(com)$/";
- if (preg_match($reg, $mail)) {
- $img = explode("@", $mail);
- $url = "//q2.qlogo.cn/headimg_dl?dst_uin={$img[0]}&spec=100";
- } else {
- if (defined('__TYPECHO_GRAVATAR_PREFIX__')) {
- $url = __TYPECHO_GRAVATAR_PREFIX__;
- } else {
- $url = $isSecure ? 'https://dn-qiniu-avatar.qbox.me' : 'http://gravatar.proxy.ustclug.org';
- $url .= '/';
- }
- if (!empty($mail)) {
- $url .= md5(strtolower(trim($mail)));
- }
- $url .= '?s=' . $size;
- $url .= '&r=' . $rating;
- $url .= '&d=' . $default;
- }
- return $url;
- }
---The END---
/* 自定义 gravatar url 前缀 /
define('__TYPECHO_GRAVATAR_PREFIX__', 'https://cdn.v2ex.com/gravatar/');
我是在 config.inc 配置文件里添加了这一句。不喜欢修改内核,怕以后升级忘记了..
我也是这么加的 但是我隐约记得我改过什么东西 \#(装大款)
最近 Github 还有 Gravatar 他就断断续续
是墙的原因吗?
嗯,唉,太难了