WordPress主题前台页面添加用户头像

2021-05-22 0 1,337 百度已收录

WordPress主题默认的用户头像是接纳gravatar头像,gravatar头像是会球公认头像,使用异常广,许多程序都用它。然则,它必须要要它的官网去注册,这对于一些通俗用户来说就不太利便了。前段时间,有个Q友问我:“wp主题用户中央怎样在前端页面就可以添加自界说用户头像呢?” 这也就是我今天所要讲的内容。

着实,wp主题要想实现在前台页面添加用户头像的功效,也不是个浩劫题,思绪:我们可以给wordpress主题数据库添加一个用户自界说字段,然后把前台上传的图片保留到这个自界说字段中,在前台模板中需要用户头像的地方,就挪用这个自界说字段就可以了。

第一步:在wp主题用户中央的小我私人资料修改页面添加用户头像上传表单:

  1.     <form action="" method="post" enctype="multipart/form-data">
  2.     <!-- 用户图像 -->
  3.     <div class="change-photo-btn">
  4.     <div class="photoUpload">
  5.        <span><i class="fa fa-upload"></i> 上传图像</span>
  6.        <input type="file" class="upload" name="simple_local_avatar"/>
  7.     </div>
  8.     </div>

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

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

  1. //图片上传函数:上传单张图片
  2. //参数1:图片信息; 参数2:存放图片路径
  3. function upload_image($info,$path){
  4. //获取图片后缀
  5. $pre = strrchr($info["name"],".");
  6. $img_name = date("YmdHis").$pre;
  7. //错误过滤
  8. if($info["error"]>0){
  9. switch($info["error"]){
  10. case 1: echo "文件巨细跨越php.ini设置的巨细 2M。"; break;
  11. case 2: echo "文件巨细跨越表单设置的巨细。"; break;
  12. case 3: echo "文件只有部门被上传。"; break;
  13. case 4: echo "没有文件被上传。"; break;
  14. case 6: echo "找不到暂且文件夹。"; break;
  15. case 7: echo "文件写入失败。"; break;
  16. }
  17. echo '<script>alert("返回添加图片页面。"); window.history.back(); </script>';
  18. exit;
  19. }
  20. //图片类型过滤
  21. $pic_arr = array("image/jpeg","image/jpg","image/pjpeg","image/png","image/x-png","image/gif");
  22. if(!in_array($info["type"],$pic_arr)){
  23. echo '<script>alert("上传的文件必须是 jpg、png、gif名堂的。"); window.history.back();</script>';
  24. exit;
  25. }
  26. //图片巨细过滤
  27. if($info["size"]>(10*1024*1024)){
  28. echo '<script>alert("上传图片的巨细不能跨越 10M。"); window.history.back();</script>';
  29. exit;
  30. }
  31. if(is_uploaded_file($info["tmp_name"])){
  32. move_uploaded_file($info["tmp_name"],$path.$img_name);
  33. return $img_name;
  34. }
  35. }

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

  1.     $path = WP_CONTENT_DIR.'/uploads/users_avagar/'; //在 uploads目录下确立一个 users_avagar目录
  2.     if(!is_dir($path)){
  3.     mkdir($path);
  4.     }
  5.     //组合 图片url
  6.     $img_url['full'] = WP_CONTENT_URL.'/uploads/users_avagar/'.upload_image($files,$path);
  7.     update_user_meta($uid,'simple_local_avatar',$img_url); //写入数据库

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

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!3308869544
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有猫币奖励和额外收入!

主题镇 WP教程 WordPress主题前台页面添加用户头像 https://zhutizhen.com/14717.html

永远为用户服务的镇长!

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或联络我们。
查看详情

相关文章