1 、注意,以下主题因为使用自有的头像方案,完全屏蔽了 Gravatar,所以也不支持 Cravatar:
- 7b2
- 日主题
- 子比主题
2 、对于此类主题、插件仍需适配 Cravatar?请到支持论坛中开贴↗获取帮助。
3 、如果您是普通用户不想要改代码,快速使用请安装文派头像 (WPAvatar)↗插件。
集成代码
您可以很方便的为 WordPress 集成 Cravatar 头像服务,只需要将以下代码加入您的插件或主题的 functions.php 里即可:
if ( ! function_exists( 'get_cravatar_url' ) ) {
/**
* 替换 Gravatar 头像为 Cravatar 头像
*
* Cravatar 是 Gravatar 在中国的完美替代方案,您可以在 https://cravatar.com 更新您的头像
*/
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',
'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 );
}
if ( ! function_exists( 'set_user_profile_picture_for_cravatar' ) ) {
/**
* 替换个人资料卡中的头像上传地址
*/
function set_user_profile_picture_for_cravatar() {
return '<a href="https://cravatar.com" target="_blank"> 您可以在 Cravatar 修改您的资料图片</a>';
}
add_filter( 'user_profile_picture_description', 'set_user_profile_picture_for_cravatar', 1 );
}