WordPress禁止特定用户修改密码的方法
框架(架构)  /  管理员 发布于 6年前   140
本文实例讲述了WordPress禁止特定用户修改密码的方法。分享给大家供大家参考。具体方法如下:
有时我们希望有些用户不能修改密码,而有些用户是可以修改密码的,这里就来给大家介绍关于WordPress禁止特定用户修改密码方法.
方法很简单,去掉这个公共帐号修改密码的权限即可,我们可以在主题目录下的functions.php中添加以下代码:
复制代码代码如下:$disable_ids = array( 2 ); // 禁止修改密码的用户id
global $current_user;
get_currentuserinfo();
if ( in_array( $current_user->ID, $disable_ids ) ) {
// 后台个人资料页,隐藏密码输入框
add_filter('show_password_fields', create_function('$nopass_profile', 'return false;'));
// 防止通过其他手段提交密码修改
add_action('personal_options_update', 'no_save_pwd');
}
function no_save_pwd( $user_id ) {
if(!emptyempty($_POST['pass1'])) $_POST['pass1'] = '';
if(!emptyempty($_POST['pass2'])) $_POST['pass2'] = '';
}
// 禁止使用密码找回功能
add_filter('allow_password_reset', 'no_reset_pwd', 10, 2);
function no_reset_pwd( $allow, $user_id ) {
global $disable_ids;
if ( in_array( $user_id, $disable_ids ) )
$allow = false;
return $allow;
}
以上代码第1行中的 2 是要禁止其修改密码的用户id,如果要禁止多个用户修改密码,多个id可以用半角逗号隔开,如 array( 2, 10 ),需要说明的,禁止修改密码的用户角色不能是管理员,因为管理员可以进入后台 – 外观 – 编辑,修改functions.php中的代码.
如果你想禁止某用户编辑个人资料我们可以参考下面方法,我们在当前主题的functions.php中添加以下代码:
复制代码代码如下:function disable_user_profile() {
if ( is_admin() ) {
$user = wp_get_current_user();
if ( 2 == $user->ID ) // 2 改成该用户的id
wp_die( '禁止访问' );
}
}
add_action( 'load-profile.php', 'disable_user_profile' );
当然,如果你使用前台的用户管理功能,以上方法就失效了.
希望本文所述对大家的WordPress建站有所帮助。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号