Typecho修改默认评论头像以及Gravatar镜像地址

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 .= '&amp;r=' . $rating;
        $url .= '&amp;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 .= '&amp;r=' . $rating;
        $url .= '&amp;d=mm' . $default;

        return $url;
    }

其中d的值就是用来设置默认头像的:

d=mm 神秘人
d=identicon 抽象图形(自动生成)
d=wavatar Wavatar(自动生成)
d=monsterid 小怪物(自动生成)
d=retro 复古(自动生成)

标签: typecho修改默认评论头像, gravatar镜像地址

已有 4 条评论

  1. 欧文斯 欧文斯   Mac OS X Mac OS X   Safari 11.0 Safari 11.0 

    改源码不是好方法啊

    1. inwao world inwao world 站长  Windows 7 x64 Edition Windows 7 x64 Edition   Google Chrome 67.0.3396.87 Google Chrome 67.0.3396.87 

      因为我懒,而且我这个主题就我自己用,二次开发又不给别人用,自己怎么爽怎么来.

  2. share1223 share1223   Windows 7 x64 Edition Windows 7 x64 Edition   Google Chrome 58.0.3029.110 Google Chrome 58.0.3029.110 

    最好源码不要动,直接用插件就好,你直接百度搜索一下。

    1. inwao world inwao world 站长  Windows 7 x64 Edition Windows 7 x64 Edition   Google Chrome 67.0.3396.87 Google Chrome 67.0.3396.87 

      我就是能改源码就改源码,因为这个主题是我自己用呀,虽然二次开发整体UI没动,其他的都自己修改了,也不开源给别人用。

添加新评论