wordpress个人中心页author_user的相关判断处理php代码
我们只是为author_user.php文件添加了静态的表单代码,我们要想实现前台设置用户帐号的功能,就必须为这个author_user.php文件添加php处理代码,用来处理这个页面提交的表单数据。
第一步:添加用户判断
我们制作wordpress主题用户中心的帐号设置时,只允许用户自己才可以修改自己的帐号信息,而其它人是不能修改别人的信息的。所以,在author_user.php代码中我们要添加一个判断:如果 当前用户==作者,就允许修改,否则就不允许修改,代码如下:
<?php
//这里是表单数据处理代码
//如果当前用户 = 文章作者 ,就可以编辑
if($current_user->ID == $curauth->ID){
?>
这里放上一章中的author_user.php静态表单代码
<?php } ?>
第二步:添加表单数据处理代码。
在上面的用户判断代码的上面添加如下代码
//先判断form表单提交
if(isset($_POST['submit']) && isset($_POST['action']) && $_POST['action']=='update_user' ){
//获取表单数据,把它保存在数组中,当然,也可不保存为数组
$data['uid'] = isset($_POST['user_id']) ? $_POST['user_id'] : '';
$data['nickname'] = isset($_POST['nickname']) ? $_POST['nickname'] : '';
$data['addess'] = isset($_POST['addess']) ? $_POST['addess'] : '';
$data['user_site'] = isset($_POST['user_site']) ? $_POST['user_site'] : '';
$data['qq'] = isset($_POST['qq']) ? $_POST['qq'] : '';
$data['sina_weibo'] = isset($_POST['sina_weibo']) ? $_POST['sina_weibo'] : '';
$data['user_sign'] = isset($_POST['user_sign']) ? $_POST['user_sign'] : '';
$data['description'] = isset($_POST['description']) ? $_POST['description'] : '';
//这里用update_user_meta()来更新用户字段,要一一对应
update_user_meta($data['uid'],'nickname',$data['nickname']);
update_user_meta($data['uid'],'addess',$data['addess']);
update_user_meta($data['uid'],'user_site',$data['user_site']);
update_user_meta($data['uid'],'qq',$data['qq']);
update_user_meta($data['uid'],'sina_weibo',$data['sina_weibo']);
update_user_meta($data['uid'],'user_sign',$data['user_sign']);
update_user_meta($data['uid'],'description',$data['description']);
echo '<script>alert("修改成功。"); history.back(); </script>';
return;
}
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
最新评论
Z.
11月29日
博主你好,Deng插件,这个点击不进去,提示这个(Warning: require_once(/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php): failed to open stream: No such file or directory in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26
Fatal error: require_once(): Failed opening required '/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php' (include_path='.:/www/server/php/72/lib/php') in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26)
点都德
2天前
:喷::喜欢::怒::黑线: