WordPress主题设置在前台页面添加用户头像教程

WordPress默认用户头像都是采用gravatar头像,因为gravatar头像是全球公认头像,使用非常广泛,但是想要使用它需要去它的官网注册,对于普通用户是不方便的,今天VPSCHE小车博客就分享一个WordPress主题设置在前台页面添加用户头像教程

WordPress主题设置在前台页面添加用户头像教程

我们可以给wordpress主题数据库添加一个用户自定义字段,然后把前台上传的图片保存到这个自定义字段中,在前台模板中需要用户头像的地方,就调用这个自定义字段就可以了

第一步:在WordPress主题用户中心的个人资料修改页面添加用户头像上传表单:

<form action=”” method=”post” enctype=”multipart/form-data”>

<!– 用户图像 –>

<div class=”change-photo-btn”>

<div class=”photoUpload”>

<span><i class=”fa fa-upload”></i> 上传图像</span>

<input type=”file” class=”upload” name=”simple_local_avatar”/>

</div>

</div>

这里的simple_local_avatar 就是用户头像自定义字段键名。注:上传图片的表单必须要加上enctype=”multipart/form-data” 这个,没有这个就无法上传。

第二步:在WordPress主题的functions.php文件中添加上传图片的处理函数代码:

//图片上传函数:上传单张图片

//参数1:图片信息; 参数2:存放图片路径

function upload_image($info,$path){

//获取图片后缀

$pre = strrchr($info[“name”],”.”);

$img_name = date(“YmdHis”).$pre;

//错误过滤

if($info[“error”]>0){

switch($info[“error”]){

case 1: echo “文件大小超过php.ini设置的大小 2M。”; break;

case 2: echo “文件大小超过表单设置的大小。”; break;

case 3: echo “文件只有部分被上传。”; break;

case 4: echo “没有文件被上传。”; break;

case 6: echo “找不到临时文件夹。”; break;

case 7: echo “文件写入失败。”; break;

}

echo ‘<script>alert(“返回添加图片页面。”); window.history.back(); </script>’;

exit;

}

//图片类型过滤

$pic_arr = array(“image/jpeg”,”image/jpg”,”image/pjpeg”,”image/png”,”image/x-png”,”image/gif”);

if(!in_array($info[“type”],$pic_arr)){

echo ‘<script>alert(“上传的文件必须是 jpg、png、gif格式的。”); window.history.back();</script>’;

exit;

}

//图片大小过滤

if($info[“size”]>(10*1024*1024)){

echo ‘<script>alert(“上传图片的大小不能超过 10M。”); window.history.back();</script>’;

exit;

}

if(is_uploaded_file($info[“tmp_name”])){

move_uploaded_file($info[“tmp_name”],$path.$img_name);

return $img_name;

}

}

第三步:上传图片并保存到数据库:

$path = WP_CONTENT_DIR.’/uploads/users_avagar/’; //在 uploads目录下创建一个 users_avagar目录

if(!is_dir($path)){

mkdir($path);

}

//组合 图片url

$img_url[‘full’] = WP_CONTENT_URL.’/uploads/users_avagar/’.upload_image($files,$path);

update_user_meta($uid,’simple_local_avatar’,$img_url); //写入数据库

通过上面的3步,我们就对WordPress主题实现了用户在前台页面就可以上传修改自定义头像了,然后在需要调用头像的地方,使用 get_user_meta() 方法来调用。不过,这种方法也有一个缺陷:就是没有跟gravatar头像调用方法通用,调用gravatar头像的方法:get_avatar() ,如查想使用get_avatar来调用我们这个自定义头像,可以添加一些判断处理,这里就不多做介绍了。

小车博客下载必看

给TA打赏
共{{data.count}}人
人已打赏
WP教程

WordPress主题开发时如何在搜索框输入时显示下拉关键词列表?

2020-7-7 9:58:59

WP教程

WordPress主题如何获取上一篇和下一篇文章链接?

2020-7-7 10:22:53




重要声明

本站资源来自会员发布以及互联网收集,不代表本站立场,如有侵犯你的权益请联系管理员-车车站内发信联系 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请用户仔细辨认内容的真实性,避免上当受骗!本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请在下载24小时内删除!


如果遇到付费才可观看的文章,建议升级终身VIP。全站所有资源任意下免费看”。本站资源少部分采用7z压缩,为防止有人压缩软件不支持7z格式,7z解压,建议下载7-zip,zip、rar解压,建议下载WinRAR

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索