用户切换

Description

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

功能

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

安全性

  • Only users with the ability to edit other users can switch user accounts. By default this is only Administrators on single site installations, and Super Admins on Multisite installations.
  • 不会(也不可能)暴露用户之间的密码。
  • 使用 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

Really useful plugin

The perfect solution to my problem. Which was a way to login to a user’s account when they report an issue without having to reset their password.

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!

Read all 154 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.