WordPress 禁止 get_avatar 调用 Gravatar 头像,替换为自定义头像

反诈示警:如遇到文章内跳转至别的网站或产生需要交钱,交易等行为,均为诈骗行为,请谨慎对待。对于网上兼职、刷单、刷信誉的就是诈骗,请勿相信!需要提供身份证明、短信验证和短信链接点击都是诈骗, 请不要提供!同时请下载“国家反诈中心”App能自查自检,规避诈骗电话,免遭损失。

不得不说 WordPress 确实很强大,但是随着 WordPress 应用的广泛性和快速发展,其应用范围也越来越广,从当初的博客,到企业网站,再到现在的社交性的网站,越来越受到人们的欢迎。很多的功能方面有些时候也并不是适合与每一个站点,而 WordPress 默认情况下使用的是 Gravatar 头像,但是使用略有不便,比如我们国内需要翻墙才能注册这个头像,普通的网民或者用户可能很难操作吧!

WordPress 禁止 get_avatar 调用 Gravatar 头像,替换为自定义头像,插图,来源:资源仓库www.zycang.com

而在近期子凡做泪雪旗下网站间整合的时候,就需要把各个网站间用户的头像全部统一,而对于在 WordPress 系统本身就拥有一套头像体系的情况下,我们只能选择替换。之所以能使用替换,也是源自于 WordPress 提供了良好的接口。多的就不说了,直接上代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//头像重置到 i.leixue.com (last update 2018/11/12)
add_filter( \'get_avatar\' , \'my_custom_avatar\' , 1 , 5 );
function my_custom_avatar( $avatar, $id_or_email, $size, $default, $alt) {
	if (filter_var($id_or_email, FILTER_VALIDATE_EMAIL)) {//判断是否为邮箱
		$email = $id_or_email;//用户邮箱
		$user = get_user_by( \'email\', $email );//通过邮箱查询用户信息
	}else{
		$uid = (int) $id_or_email;//获取用户 ID
		$user = get_user_by( \'id\', $uid );//通过 ID 查询用户信息
	}

	//$user_login = $user->user_login;//用户名
	$email = $user->user_email;//用户邮箱
	$alt = $user->user_nicename;//用户昵称
	if(get_comment_author_email( $comment )){//通过评论获取邮箱
		$email = get_comment_author_email( $comment );
		$alt = get_comment_author( $comment );
	}

    $avatar = "https://i.leixue.com/avatar.php?email=".$email;
    $avatar = "<img alt=\'{$alt}\' src=\'{$avatar}\' class=\'avatar avatar-{$size} photo\' height=\'{$size}\' width=\'{$size}\' />";

    return $avatar;
}

直接把以上代码粘贴在主题 functions.php 中即可。以上代码是子凡在开发泪雪建站时所使用的,如果你有一套自己完善的头像体系,也可以使用这样的方法调用自己网站的头像。

另外泄漏一个秘密,如果你直接使用上面代码,你网站的用户头像就接入到泪雪用户中心来啦!只要你网站的用户在泪雪个人中心(i.leixue.com)注册帐户并上传了自己的头像,都可以完美的调用哦!

嘿嘿,有没有很高科技的样子?

如需 WordPress 优化加速、二次开发、网站维护、企业网站建设托管等服务,点此联系我 | 近期站内热门福利推荐:
文章版权及转载声明

本文地址:https://www.zycang.com/25314.html
文章转载或复制请以超链接形式并注明来源出处。 本文最后更新于:2022-07-27 23:12:55
声明:某些文章或资源具有时效性,若有 错误 或 所需下载资源 已失效,请联系客服QQ:11210980

喜欢就支持一下吧
点赞237赞赏 分享
评论 抢沙发

请登录后发表评论