Wordpress:为角色中的所有用户设置一个密码,现有+未来注册
Wordpress: Set one password for all users in a role, existing + future signups
一位客户希望我为特定角色 (Attendee) 的所有用户设置一个密码。 I/they 知道这不是明智的安全做法,但必须这样做。这个角色基本没什么能力,网站里面也没有特别敏感的数据。
我已经通过
为个人用户做到了这一点
wp_set_password( 'password', 1 );
如何将相同的功能应用到所有具有“与会者”角色的用户? (真实密码不会是"password")
如何获取所有具有该角色的用户并应用密码?
$attendees = get_users('role=Attendee');
foreach ($attendees as $user) {
wp_set_password('password', $user->ID);
}
为了保险起见,在执行此操作之前一定要备份您的数据库。
或者,更改一个用户的密码,复制用户数据表中的密码散列,并将具有相同角色的所有用户更新为该密码。但是上面的代码在 PHP 中应该也能正常工作。
当然还有以后创建的Attendees的问题。为此,您可以在 functions.php 文件中添加一个挂钩:
https://developer.wordpress.org/reference/hooks/added_existing_user/
但是,在管理员创建配置文件后立即覆盖用户密码是一种奇怪的行为。希望您只需要编辑现有用户。
一位客户希望我为特定角色 (Attendee) 的所有用户设置一个密码。 I/they 知道这不是明智的安全做法,但必须这样做。这个角色基本没什么能力,网站里面也没有特别敏感的数据。
我已经通过
为个人用户做到了这一点wp_set_password( 'password', 1 );
如何将相同的功能应用到所有具有“与会者”角色的用户? (真实密码不会是"password")
如何获取所有具有该角色的用户并应用密码?
$attendees = get_users('role=Attendee');
foreach ($attendees as $user) {
wp_set_password('password', $user->ID);
}
为了保险起见,在执行此操作之前一定要备份您的数据库。
或者,更改一个用户的密码,复制用户数据表中的密码散列,并将具有相同角色的所有用户更新为该密码。但是上面的代码在 PHP 中应该也能正常工作。
当然还有以后创建的Attendees的问题。为此,您可以在 functions.php 文件中添加一个挂钩:
https://developer.wordpress.org/reference/hooks/added_existing_user/
但是,在管理员创建配置文件后立即覆盖用户密码是一种奇怪的行为。希望您只需要编辑现有用户。