前几天发个篇文章,《WordPress主题Gravatar头像/评论头像加载慢、无法加载如何解决》 但是v2ex国内偶尔也会打不开,所以更换成随机显示本地图片。
在开始之前,需要做以下的工作。
★在当前主题目录中新建一个名称为avatar的文件夹(名字按你喜好)
★准备好图片,随机多少张就准备多少张,名称需要一致,另外和一张用于管理员的图片,名称我们可命名为admin.jpg,放到上述文件夹中。
★添加代码至functions.php中
- //随机本地头像
- add_filter( 'get_avatar' , 'local_random_avatar' , 1 , 5 );
- function local_random_avatar( $avatar, $id_or_email, $size, $default, $alt) {
- if ( ! emptyempty( $id_or_email->user_id ) ) {
- $avatar = ''.get_template_directory_uri().'/img/avatar/admin.jpg';
- }else{
- $random = mt_rand(1, 23);
- $avatar = ''.get_template_directory_uri().'/img/touxiang/'. $random .'.jpg';
- }
- $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
- return $avatar;
- }
1、 $random = mt_rand(1, 23); 这一行里的23是图片的数量
2、如果你的图片是.png格式的,请将.jpg改成.png。
3、Wordpress后台开启头像