• 售前

  • 售后

热门帖子
入门百科

WordPress克制特定用户修改密码的方法

[复制链接]
心随674 显示全部楼层 发表于 2021-8-15 19:59:31 |阅读模式 打印 上一主题 下一主题
本文实例讲述了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建站有所帮助。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作