用户切换

Description

这个插件允许您在 WordPress 中快速切换为不同的用户登录,只需点击一个按钮,您就可以立即登入为您想要的用户。这个对于管理员拥有多个账户、且需要频繁切换账户的测试环境中非常有用。

功能

  • 切换用户:在 用户 页面快速切换为任意用户。
  • 切回:同时还可以快速切回之前的账户。
  • 临时登出:登出用户,在需要的时候快速登入。
  • 非常的安全(请查看下方的 安全性 章节)
  • 兼容 WordPress、WordPress 多站点、BuddyPress 以及 bbPress。

安全性

  • 只有拥有编辑用户权限的用户可以切换至其他用户。也就是说默认情况下,只有单站点的管理员、或者多站点(Multisite)的超级管理员可以这样做。
  • 不会(也不可能)暴露用户之间的密码。
  • 使用 WordPress 自身的 cookie 验证系统来记录您的用户切换。
  • 基于 WordPress 的临时安全系统实现,保证用户切换请求无法被伪造。
  • Full support for user session validation where appropriate.
  • 完整支持 SSL 后台管理(如果可用的话)

用法

  1. 在 WordPress 中访问 用户 菜单,然后您会在每个用户的动作按钮旁边发现一个 切换用户 的链接。
  2. 点击这个链接你会立即切换为这个用户。
  3. 您可以通过管理后台的 切回 链接或者工具栏处的用户档案下拉菜单中的链接快速切换为原始登录用户。

查看 FAQ 来了解更多关于 临时登出 等更多功能。

Privacy Statement

User Switching makes use of browser cookies in order to allow users to switch to another account. Its cookies operate using the same mechanism as the authentication cookies in WordPress core, therefore their values contain the user’s user_login field in plain text which should be treated as potentially personally identifiable information. The names of the cookies are:

  • wordpress_user_sw_{COOKIEHASH}
  • wordpress_user_sw_secure_{COOKIEHASH}
  • wordpress_user_sw_olduser_{COOKIEHASH}

User Switching does not send data to any third party, nor does it include any third party resources, nor will it ever do so.

Screenshots

  • The Switch To link on the Users screen
  • The Switch To link on a user's profile

FAQ

What does “Switch off” mean?

Switching off logs you out of your account but retains your user ID in an authentication cookie so you can switch straight back without having to log in again manually. It’s akin to switching to no user, and being able to switch back.

The Switch Off link can be found in your profile menu in the WordPress toolbar. Once you’ve switched off you’ll see a Switch back link in the footer of your site.

Does this plugin work with WordPress Multisite?

Yes, and you’ll also be able to switch users from the Users screen in Network Admin.

Does this plugin work with BuddyPress?

Yes, and you’ll also be able to switch users from member profile screens and the member listing screen.

Does this plugin work with bbPress?

Yes, and you’ll also be able to switch users from member profile screens.

我的网站使用了两步验证,这个插件能正常工作吗?

可以,大部分时候不会出现问题

One exception I’m aware of is Duo Security. If you’re using this plugin, you should install the User Switching for Duo Security add-on plugin which will prevent the two-factor authentication prompt from appearing when you switch between users.

What capability does a user need in order to switch accounts?

A user needs the edit_users capability in order to switch user accounts. By default only Administrators have this capability, and with Multisite enabled only Super Admins have this capability.

Can the ability to switch accounts be granted to other users or roles?

Yes. The switch_users meta capability can be explicitly granted to a user or a role to allow them to switch users regardless of whether or not they have the edit_users capability. For practical purposes, the user or role will also need the list_users capability so they can access the Users menu in the WordPress admin area.

If you know what you’re doing with user capabilities, this capability can also be denied from a user or role to prevent the ability to switch users, regardless of whether or not they have the edit_users capability.

Can regular admins on Multisite installations switch accounts?

No. This can be enabled though by installing the User Switching for Regular Admins plugin.

Can I switch users directly from the admin toolbar?

Yes, there’s a third party add-on plugin for this: Admin Bar User Switching.

Are any plugin actions called when a user switches account?

Yes. When a user switches to another account, the switch_to_user hook is called:

/**
 * Fires when a user switches to another user account.
 *
 * @since 0.6.0
 * @since 1.4.0 The `$new_token` and `$old_token` parameters were added.
 *
 * @param int    $user_id     The ID of the user being switched to.
 * @param int    $old_user_id The ID of the user being switched from.
 * @param string $new_token   The token of the session of the user being switched to. Can be an empty string
 *                            or a token for a session that may or may not still be valid.
 * @param string $old_token   The token of the session of the user being switched from.
 */
do_action( 'switch_to_user', $user_id, $old_user_id, $new_token, $old_token );

When a user switches back to their originating account, the switch_back_user hook is called:

/**
 * Fires when a user switches back to their originating account.
 *
 * @since 0.6.0
 * @since 1.4.0 The `$new_token` and `$old_token` parameters were added.
 *
 * @param int       $user_id     The ID of the user being switched back to.
 * @param int|false $old_user_id The ID of the user being switched from, or false if the user is switching back
 *                               after having been switched off.
 * @param string    $new_token   The token of the session of the user being switched to. Can be an empty string
 *                               or a token for a session that may or may not still be valid.
 * @param string    $old_token   The token of the session of the user being switched from.
 */

When a user switches off, the switch_off_user hook is called:

/**
 * Fires when a user switches off.
 *
 * @since 0.6.0
 * @since 1.4.0 The `$old_token` parameter was added.
 *
 * @param int    $old_user_id The ID of the user switching off.
 * @param string $old_token   The token of the session of the user switching off.
 */

In addition, User Switching respects the following filters from WordPress core when appropriate:

  • login_redirect when switching to another user.
  • logout_redirect when switching off.
  • send_auth_cookies before setting any cookies.

Reviews

A must-have

Incredibly useful when it comes to understand what’s going on from the user point of view.
Thanks for sharing your work!

Simply awesome

This is a must have plugin if you’re running BuddyPress, WooCommerce or any other plugin where you need to in-and-out of other accounts. Also incredibly useful when building any site.

Thank you so much for your great work!

A must have plugin for authorized customer service

Sometimes a user will contact us and give us permission to login as them and do something on their behalf. When used with proper PCI compliance measures it is an invaluable tool to help customers in need.

Additionally, it is wonderful to be able to test by quickly switching from different dummy user accounts you can setup to test things as a specific-role user.

Thanks so much for keeping this plugin updated and well supported. Frankly, I can’t imagine life without it!

Excellent

A really great, easy to use plugin to check what other users are seeing, especially when dealing with custom roles and capabilities.

Nice and easy

easy to use plugin. no settings to make. just does what it should. great for user roles testing!

Read all 151 reviews

Contributors & Developers

“用户切换” is open source software. The following people have contributed to this plugin.

Contributors

“用户切换” has been translated into 39 locales. Thank you to the translators for their contributions.

Translate “用户切换” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

For User Switching’s changelog, please see the Releases page on GitHub.