大家都知道,WordPress原本是调用的Gravatar头像,但是在国内,因为某些原因,Gravatar被封了,所以导致Wordpress的头像调用有些问题,再加上Gravatar的头像也不太如人意,所以我们完全可以通过DIY来进行改变我们的头像调用。在开始之前,需要做以下的工作。
★在当前主题目录中新建一个名称为avatar的文件夹
★准备好图片,比如1.jpg、2.jpg、3.jpg、4.jpg、5.jpg、6.jpg、7.jpg、8.jpg、8.jpg、9.jpg、10.jpg,另外和一张用于管理员的图片,名称我们可命名为admin.jpg!
★将图片上传至当前主题目录下的avatar文件夹下
★找到当前主题functions.php文件
★添加代码至functions.php中
/* * 这是修改管理员与回复用户头像代码 * */ add_filter( 'get_avatar' , 'local_random_avatar' , 1 , 5 ); function local_random_avatar( $avatar, $id_or_email, $size, $default, $alt) { if ( ! empty( $id_or_email->user_id ) ) { $avatar = ''.get_template_directory_uri().'/avatar/admin.png'; }else{ $random = mt_rand(1, 20); $avatar = ''.get_template_directory_uri().'/avatar/'. $random .'.png'; } $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />"; return $avatar; }
1、$random = mt_rand(1,20); 这一行里的20是图片的数量
2、如果你的图片是.jpg格式的,请将.png改成.jpg
3、Wordpress后台开启头像
增加WordPress后台头像选项
在当前的主题的 functions.php 的最后一个 ?> 前面添加下面的代码
add_filter( 'avatar_defaults', 'newgravatar' ); function newgravatar ($avatar_defaults) { $myavatar = get_bloginfo('template_directory') . '/images/wpdaxue-gravatar.jpg'; $avatar_defaults[$myavatar] = "自定义头像"; return $avatar_defaults; }
根据用户邮箱显示Gravatar头像
将下面的代码添加到主题的 functions.php 文件,可以把gravatar的地址改成自己网站的地址,相当于自己架设了一个头像服务器。
function wpdaxue_display_gravatar() { global $current_user; get_currentuserinfo(); // 获取用户的邮箱地址 $getuseremail = $current_user->user_email; // 将邮箱转换成MD5哈希值,并设置图像的大小为32像素 $usergravatar = 'http://www.gravatar.com/avatar/' . md5($getuseremail) . '?s=32'; echo '<img src="' . $usergravatar . '" class="wpd_gravatar" />'; }
然后通过下面的代码调用当前用户的Gravatar头像:
<?php wpdaxue_display_gravatar(); ?>
sicnature ---------------------------------------------------------------------
I P 地 址: 3.15.34.50
区 域 位 置: 美国
系 统 信 息:
Original content, please indicate the source:
同福客栈论坛 | 蟒蛇科普 | 海南乡情论坛 | JiaYu Blog
sicnature ---------------------------------------------------------------------
Welcome to reprint. Please indicate the source https://myzhenai.com.cn/post/3752.html
2条评论
我的主题不行啊?
是根据步骤要求来修改的吗?
1、本地图片上传了没有?路径对不对?
2、检查一下你的代码