信息

【技术分享】WordPress解决Gravatar公共头像服务无法访问的问题

热帖

CravatarLitePress推出的国内公共头像服务,用于替代Gravatar公共头像服务,Cravatar100%兼容Gravatar的头像API,可以简单的通过替换域名的方式来使用Cravatar接替Gravatar。同时,作为对中国互联网环境的特别适配,Cravatar支持在用户未设置Cravatar头像及Gravatar头像时匹配QQ头像(仅限于使用QQ数字邮箱的用户),这一切是自动进行的,用户对此无感知。其带来的效果是:经过三级匹配(Cravatar头像 > Gravatar头像 > QQ头像)后,大约70%的访客都会得到准确的头像。

此外,我们还会对所有头像进行人工审核,确保不会出现害群之马。

100%兼容Gravatar的同时还有以下优势

1、更快的速度:服务完全架设并运行在中国大陆境内,提供毫秒级的响应速度。

2、更高的稳定性:所有头像经人工审核确保不会出现违规内容,也就不会出现时不时访问不了的情况。

3、更高的头像展现率:在自有头像库的基础上囊括了

使用方法

如果你使用的WordPress,推荐安装LitePress推出的WordPress后台加速插件:bufanz.com/post/103.html

如果你想为你的WordPress接入Cravatar可以直接将以下代码加入你的主题或插件中(任何开发者都可以将该服务集成到自己的产品里,无需事先通知):

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头像,则可以参考我们的开发文档:https://cravatar.cn/developers

如何上传自己的头像

在Cravatar官网(https://cravatar.cn)注册账号(与litepress.cn账号互通)即可添加和更换头像,头像修改后会在5分钟内刷新缓存并生效。

🌟-阅读剩余-🌟
版权声明 1、本网站名称:安鹿轩
2、本站永久网址:https://www.anlu1314.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系在本站私信站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。

THE END