Gravatar是由Automattic推出的公共头像服务。用户可以在Gravatar网站上传头像,在使用Gravatar服务的网站评论可显示头像。WordPress等网站建站系统默认使用Gravatar。但由于Gravatar由用户上传头像文件,其中有违反中国法律法规内容,导致其在大陆访问受阻。很多网站通过对其进行代理,在国内进行访问,但由于其问题未被解决,仍有被屏蔽和法律风险。今天介绍的Cravatar通过对代理图像进行审核,规避了法律风险。
此外,Cravatar还后端支持QQ数字邮箱显示QQ头像功能,不必担心之前的前端获取导致QQ直接泄露问题
一、Cravatar介绍
Cravatar是WordPress本土化计划中生态基础设施的一部分,就和LitePress.cn(下称LP平台)构建的翻译平台及应用市场一样。
Cravatar 100%兼容Gravatar的头像API,这意味着你可以简单的通过替换域名的方式来使用Cravatar接替Gravatar。同时,作为对中国互联网环境的特别适配,Cravatar支持在用户未设置Cravatar头像及Gravatar头像时匹配QQ头像(仅限于使用QQ数字邮箱的用户),这一切是自动进行的,用户对此无感知。
其带来的效果是:
经过三级匹配(Cravatar头像->Gravatar头像->QQ头像)后,大约70%的访客都会得到准确的头像。
此外,LP平台还会对所有头像进行人工审核,确保不会出现害群之马。总的来说,Cravatar在100%兼容Gravatar的同时还有以下优势:
更快的速度 – 服务完全架设并运行在中国大陆境内,提供毫秒级的响应速度
更高的稳定性 – 所有头像经人工审核确保不会出现违规内容,也就不会出现时不时访问不了的情况
更高的头像展现率 – 在自有头像库的基础上囊括了Gravatar和QQ的头像库,可谓集天下之大成[1]
二、如何使用
如果你正在使用WordPress,目前LP平台正在推进国内部分主题内置Cravatar,如您的主题暂不支持,你可以考虑以下几种方法
1.插件法
你可以通过下载安装最新版WP-China-Yes插件,接入WP中国本土化平台,设置使用Cravatar。
2.代码法
你可以通过对主题的functions.php文件添加以下代码[1]
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.cn寻找
如有问题可以通过LitePress社区提问