更换Gravatar服务器插件重新显示Typecho头像

因为我一直挂着Socks5上网,所以后知后觉才知道Gravatar已经被墙了。

现在的墙法实在诡异多变,教人无法揣度。是不是以后我搞好政府PR,就可以一一把我的境外竞争对手墙了呢?

关于恢复Typecho的评论头像,现在网上的教程多是修改/var/Widget/Abstract 下的 Comments.php 文件,具体如下:

将Comments.php 文件390行的gravatar函数换成下面的:

public function gravatar($size = 32, $default = NULL)

    {

        if ($this->options->commentsAvatar && 'comment' == $this->type) {

            $rating = $this->options->commentsAvatarRating;

            $this->pluginHandle(__CLASS__)->trigger($plugged)->gravatar($size$rating$default$this);

            if (!$plugged) {

                //$url = Typecho_Common::gravatarUrl($this->mail, $size, $rating, $default, $this->request->isSecure());

                $mailHash = NULL;

                if (!emptyempty($this->mail)) {

                $mailHash = md5(strtolower($this->mail));

                }

                $url = 'https://secure.gravatar.com/avatar/';

                if (!emptyempty($this->mail)) {$url .= $mailHash;}

                $url .= '?s=' . $size;

                $url .= '&r=' . $rating;

                $url .= '&d=' . $default;

                echo '<img class="avatar" src="' . $url . '" alt="' .

                $this->author . '" width="' . $size . '" height="' . $size . '" />';

            }

        }

    }

但是实际上[爱在发烧]同学提供了一个插件解决我们的问题。

插件解压后有一个php文件,直接上传到/usr/plugins目录,到后台启用。

你需要到插件的设置界面将http环境下的Gravatar服务器替换成

  • http://gravatar.duoshuo.com
  • http://gravatar.qiniudn.com

任意一个。欢迎补充这些国内镜像。

需要注意!因为是镜像,有更新周期,所以可能会出现部分用户头像查询不到的情况。这也是妥协产物。

下载地址:typecho-gravatar.zip

引用: http://azfashao.com/touxiangno/

发表评论