Gravatar 头像总是无法显示?你可改用完美替代的 Cravatar

Gravatar 作为互联网公共头像服务,已经成为很多网站程序的默认头像服务,特别是和 WordPress 集成的非常好,多数博主都注册了 Gravatar ,以方便博客互访的评论留言。但 Gravatar 在国内时不时就会被墙一下,最近已经几个月不能正常显示了,虽然许多博主使用反代的方式来确保 Gravatar 能正常访问,但很容易失效,将人折腾得心烦意乱。

近日一直致力于解决 WordPress 在中国高墙环境下水土不服问题的,WP-China-Yes 插件的作者,再次出手,推出了 Gravatar 在中国的完美替代方案 Cravatar

Cravatar 完全兼容 Gravatar 的 API 规范,支持用户自由的上传和分享头像。同时如果你未在Cravatar设置头像,则会先尝试调用 Gravatar 上的头像数据,其后是 QQ 头像,最后会返回 Cravatar 的默认头像。

使用 Cravatar 头像,最大的的优势就是头像加载速度显著提升。服务完全架设并运行在中国大陆境内,提供毫秒级的响应速度,也不需要再将头像缓存到本地了。

如何注册 Cravatar 头像服务

进入 Cravatar 头像网站(Cravatar头像申请地址),用自己常用的邮箱进行注册,登录后点击“立即创建你的头像”,上传一张头像图片,完成创建。如果你的邮箱已经创建过 Gravatar ,则会自动显示创建的头像,如果你的邮箱是QQ数字邮箱,则会显示你的QQ头像,即按 Cravatar -> Gravatar -> QQ 头像的顺序调用头像图片。

当你用注册的邮箱在支持公共头像服务的网站留言时,就会看到自己特有的 Cravatar 头像了。

如何将 Cravatar头像服务集成到 WordPress 网站中

你可以很方便的为 WordPress 集成 Cravatar 头像服务,只需要将以下代码加入主题的 functions.php 里即可:

if ( ! function_exists( 'get_cravatar_url' ) ) {
    /**
     * 替换Gravatar头像为Cravatar头像
     *
     * Cravatar是Gravatar在中国的完美替代方案,你可以在https://cravatar.cn更新你的头像
     */
    function get_cravatar_url( $url ) {
        $sources = array(
            'www.gravatar.com',
            '0.gravatar.com',
            '1.gravatar.com',
            '2.gravatar.com',
            'secure.gravatar.com',
            'cn.gravatar.com'
        );

        return str_replace( $sources, 'cravatar.cn', $url );
    }

    add_filter( 'um_user_avatar_url_filter', 'get_cravatar_url', 1 );
    add_filter( 'bp_gravatar_url', 'get_cravatar_url', 1 );
    add_filter( 'get_avatar_url', 'get_cravatar_url', 1 );
}

if ( ! function_exists( 'set_defaults_for_cravatar' ) ) {
    /**
     * 替换WordPress讨论设置中的默认头像
     */
    function set_defaults_for_cravatar( $avatar_defaults ) {
        $avatar_defaults['gravatar_default'] = 'Cravatar 标志';

        return $avatar_defaults;
    }

    add_filter( 'avatar_defaults', 'set_defaults_for_cravatar', 1 );
}

如果你已经安装了 WP-China-Yes 插件(立即下载),可以更新到最新版后在插件设置中"使用 Cravatar 头像"为“全局启用”。

替换默认头像设置的Gravatar名称

添加上面的代码以后,我们在 设置 - 讨论 界面的头像选择这里,仍然显示 Gravatar名称,使用下面的代码即可替换:

if ( ! function_exists( 'set_defaults_for_cravatar' ) ) {
/**
* 替换WordPress讨论设置中的默认头像
*/
function set_defaults_for_cravatar( $avatar_defaults ) {
$avatar_defaults['gravatar_default'] = 'Cravatar 标志';
return $avatar_defaults;
}
add_filter( 'avatar_defaults', 'set_defaults_for_cravatar', 1 );
}

如果你使用其他系统,如 Typecho,想集成 Cravatar头像,则可以参考开发文档:https://cravatar.cn/developers

相关推荐

9 条评论

  1. 关闭头像更彻底。

    • Gravatar被墙了,WordPress下面最好用WP China Yes插件。

      • WP China Yes 插件很不错,我也安装使用了。

  2. 这真是一个好主意,我怎么没想到搞一个这种服务呢。我在仔细研究一下这个Cravatar

    • 看,又被人抢先了吧。

  3. 这个Cravatar头像确实很不错,不过查询改头像官网是个人备案,个人的话不知道是否有财力支持这个项目一直走下去,比较担心“虎头蛇尾”。如果换成企业备案的话,估计会有更多站长信服,然后大家都使用这个Cravatar头像,而不是Gravatar头像。

    • 他的那个 WordPress 中国化项目,看着野心挺大呀。哈哈。

  4. 对这个一直都无感!

  5. 嘿嘿,我的新主题最新版也支持了!

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

微信扫一扫

微信扫一扫

微信扫一扫,分享到朋友圈

Gravatar 头像总是无法显示?你可改用完美替代的 Cravatar
返回顶部

显示

忘记密码?

显示

显示

获取验证码

Close