wordpress管理员快速登录其他用户的账户

廖为祥 wordpresswordpress管理员快速登录其他用户的账户已关闭评论220阅读模式

有的时候,客户说他们的WordPress后台有问题,你用管理员账户登陆又没发现问题,客户又解释不清楚,怎么办?可以问他要账号密码,登录上去看看。但是每次都要账号密码,多少有点麻烦和不智能,下面这段代码可以让管理员快速登录其他用户的账户,加入到当前所使用的模板目录的 functions.php 文件中。wordpress管理员快速登录其他用户的账户

add_filter('user_row_actions', function($actions, $user) {
	$capability = (is_multisite())?'manage_site':'manage_options';
	if(current_user_can($capability)) {
		$actions['login_as'] = '<a title="以此身份登陆" href="'.wp_nonce_url("users.php?action=login_as&users=$user->ID", 'bulk-users').'">以此身份登陆</a>';
	}
	return $actions;
}
, 10, 2);
add_filter('handle_bulk_actions-users', function($sendback, $action, $user_ids) {
	if($action == 'login_as') {
		wp_set_auth_cookie($user_ids, true);
		wp_set_current_user($user_ids);
	}
	return admin_url();
}
,10,3);

刷新WordPress后台,进入用户管理,你就会发现多了一个“以此身份登录”的按钮,点一下就自动退出管理员账号,并免密码以该账号登录。

廖为祥
  • 本文由 发表于 2022年12月13日 11:47:24
  • 除特别声明外,本站原创内容版权遵循 CC BY-NC-ND/2.5/CN协议规定