Cravatar解决国内Gravatar头像加载问题

国内部分线路加载Gravatar全球通用头像经常无法使用,严重拖慢WordPress的加载速度,现在,新替代方案Cravatar可以完美解决!

uTools 1627951921727 - Cravatar解决国内Gravatar头像加载问题

Cravatar 完全兼容 Gravatar 的 API 规范,支持用户上传和分享头像。

用户使用 Cravatar :

Cravatar 官网:https://cravatar.cn/

进入Cravatar头像网站,用自己常用的邮箱注册,登录后点击“立即创建你的头像”。

上传一张头像图片之后,用注册的邮箱在支持头像的网站留言,就会看到自己专有的Cravatar头像。

站长将Cravatar集成到自己的WordPress网站:

很简单,将下面的代码添加到当前主题函数模板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 );
}

替换完毕后,Cravatar会替代Gravatar,网站加载速度显著提升,也不需要再将头像缓存到本地了。

当留言者使用的QQ邮箱没有申请头像,Cravatar会自动调用QQ头像,非常人性化。