PHPackages                             johnbillion/user-switching - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. johnbillion/user-switching

ActiveWordpress-plugin[Security](/categories/security)

johnbillion/user-switching
==========================

Instant switching between user accounts in WordPress and WooCommerce.

1.12.0(2w ago)20372.6k↓47.3%54[3 issues](https://github.com/johnbillion/user-switching/issues)[2 PRs](https://github.com/johnbillion/user-switching/pulls)2GPL-2.0-or-laterPHPPHP &gt;=7.4CI passing

Since Oct 28Pushed 2w ago8 watchersCompare

[ Source](https://github.com/johnbillion/user-switching)[ Packagist](https://packagist.org/packages/johnbillion/user-switching)[ Docs](https://github.com/johnbillion/user-switching/)[ GitHub Sponsors](https://github.com/sponsors/johnbillion)[ RSS](/packages/johnbillion-user-switching/feed)WikiDiscussions develop Synced 1w ago

READMEChangelog (10)Dependencies (30)Versions (62)Used By (2)

User Switching
==============

[](#user-switching)

[![](https://camo.githubusercontent.com/bbdab82da6b036be080587496e2d5f73bcc7e35282bab06f69e3061498915bf1/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6574686963616c2d6f70656e253230736f757263652d3462616161612e7376673f7374796c653d666c61742d737175617265)](#ethical-open-source)[![](https://camo.githubusercontent.com/c4678ce82bbbb0fd869e4c9b4522189f76d27a7063ad383dad40010064c432cc/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f706c7567696e2f696e7374616c6c732f757365722d737769746368696e673f7374796c653d666c61742d737175617265)](https://wordpress.org/plugins/user-switching/)[![](https://camo.githubusercontent.com/5241cd68cac11122e08e639e252c98acb78d9b437c957cbb5deb720bb153f700/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6a6f686e62696c6c696f6e2f757365722d737769746368696e672f696e746567726174696f6e2d74657374732e796d6c3f6272616e63683d646576656c6f70267374796c653d666c61742d737175617265)](https://github.com/johnbillion/user-switching/actions)

This plugin allows you to quickly swap between user accounts in WordPress at the click of a button. You'll be instantly logged out and logged in as your desired user. This is handy for helping customers on WooCommerce sites, membership sites, testing environments, or for any site where administrators need to switch between multiple accounts.

Features
--------

[](#features)

- Switch user: Instantly switch to any user account from the *Users* screen.
- Switch back: Instantly switch back to your originating account.
- Switch off: Log out of your account but retain the ability to instantly switch back in again.
- Compatible with Multisite, WooCommerce, BuddyPress, and bbPress.
- Compatible with most membership and user management plugins.
- Compatible with most two-factor authentication solutions (see the [FAQ](https://wordpress.org/plugins/user-switching/faq/) for more info).
- Approved for use on enterprise-grade WordPress platforms such as [Altis](https://www.altis-dxp.com/) and [WordPress VIP](https://wpvip.com/).

Note: User Switching supports versions of WordPress up to three years old, and PHP version 7.4 or higher.

Security
--------

[](#security)

- 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.
- Passwords are not (and cannot be) revealed.
- Uses the cookie authentication system in WordPress when remembering the account(s) you've switched from and when switching back.
- Implements the nonce security system in WordPress, meaning only those who intend to switch users can switch.
- Full support for user session validation where appropriate.
- Full support for HTTPS.

Usage
-----

[](#usage)

1. Visit the *Users* menu in WordPress and you'll see a *Switch To* link in the list of action links for each user.
2. Click this and you will immediately switch into that user account.
3. You can switch back to your originating account via the *Switch back* link on each dashboard screen or in your profile menu in the WordPress toolbar.

Frequently Asked Questions
--------------------------

[](#frequently-asked-questions)

[See the FAQ on the WordPress.org plugin page for User Switching](https://wordpress.org/plugins/user-switching/#faq).

Other Plugins
-------------

[](#other-plugins)

I maintain several other plugins for developers. Check them out:

- [Query Monitor](https://wordpress.org/plugins/query-monitor/) is the developer tools panel for WordPress
- [WP Crontrol](https://wordpress.org/plugins/wp-crontrol/) lets you view and control what's happening in the WP-Cron system

Privacy Statement
-----------------

[](#privacy-statement)

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

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, which means their values contain the user's `user_login` field in plain text which should be treated as potentially personally identifiable information (PII) for privacy and regulatory reasons (GDPR, CCPA, etc). The names of the cookies are:

- `wordpress_user_sw_{COOKIEHASH}`
- `wordpress_user_sw_secure_{COOKIEHASH}`
- `wordpress_user_sw_olduser_{COOKIEHASH}`

See also the FAQ for some questions relating to privacy and safety when switching between users.

Accessibility Statement
-----------------------

[](#accessibility-statement)

User Switching aims to be fully accessible to all of its users. It implements best practices for web accessibility, outputs semantic and structured markup, adheres to the default styles and accessibility guidelines of WordPress, uses the accessibility APIs provided by WordPress and web browsers where appropriate, and is fully accessible via keyboard.

User Switching should adhere to Web Content Accessibility Guidelines (WCAG) 2.0 at level AA when used with a recent version of WordPress where its admin area itself adheres to these guidelines. If you've experienced or identified an accessibility issue in User Switching, please open a thread in [the User Switching plugin support forum](https://wordpress.org/support/plugin/user-switching/) and I'll address it swiftly.

Sponsors
--------

[](#sponsors)

The time that I spend maintaining this plugin and others is in part sponsored by:

[![Automattic](https://camo.githubusercontent.com/b772ed2bbb2f490e5cf6117b2cdfea077c3949279bf5c48dbbeaaf2215c925dd/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f6a6f686e62696c6c696f6e2f6a6f686e62696c6c696f6e406c61746573742f6173736574732f73706f6e736f72732f6175746f6d61747469632e737667)](https://automattic.com)

 [![ServMask](https://camo.githubusercontent.com/9d9e5722a5e02afaed959c20a630979fb55fa9e64bf62b38ac61d78242c7d3c1/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f6a6f686e62696c6c696f6e2f6a6f686e62696c6c696f6e406c61746573742f6173736574732f73706f6e736f72732f736572766d61736b2e737667)](https://servmask.com) [![WP Staging](https://camo.githubusercontent.com/27614144605dcbbce9c3afe2584fc82e20a6a30d2b94b570d45930b08f9ce49e/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f6a6f686e62696c6c696f6e2f6a6f686e62696c6c696f6e406c61746573742f6173736574732f73706f6e736f72732f77702d73746167696e672e706e67)](https://wp-staging.com)

Plus all my kind sponsors on GitHub:

[![Sponsors](https://camo.githubusercontent.com/f21a9d0b4d63cceec70d4ceda15b47d46f71bd0a64d2932a05f83d9dd529910f/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f6a6f686e62696c6c696f6e2f6a6f686e62696c6c696f6e406c61746573742f73706f6e736f72732e737667)](https://github.com/sponsors/johnbillion)

[Click here to find out about supporting my open source tools and plugins](https://github.com/sponsors/johnbillion).

Screenshots
-----------

[](#screenshots)

1. The *Switch To* link on the Users screen
    [![The Switch To link on the Users screen](.wordpress-org/screenshot-1.png)](.wordpress-org/screenshot-1.png)
2. The *Switch To* link on a user's profile
    [![The Switch To link on a user's profile](.wordpress-org/screenshot-2.png)](.wordpress-org/screenshot-2.png)

###  Health Score

67

—

FairBetter than 99% of packages

Maintenance97

Actively maintained with recent releases

Popularity50

Moderate usage in the ecosystem

Community28

Small or concentrated contributor base

Maturity77

Established project with proven stability

 Bus Factor1

Top contributor holds 99.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~97 days

Recently: every ~75 days

Total

48

Last Release

16d ago

Major Versions

0.9 → 1.02014-08-25

PHP version history (2 changes)1.5.8PHP &gt;=5.3

1.7.1PHP &gt;=7.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/208434?v=4)[John Blackbourn](/maintainers/johnbillion)[@johnbillion](https://github.com/johnbillion)

---

Top Contributors

[![johnbillion](https://avatars.githubusercontent.com/u/208434?v=4)](https://github.com/johnbillion "johnbillion (1287 commits)")[![claude](https://avatars.githubusercontent.com/u/81847?v=4)](https://github.com/claude "claude (2 commits)")[![1naveengiri](https://avatars.githubusercontent.com/u/24760592?v=4)](https://github.com/1naveengiri "1naveengiri (2 commits)")[![mphillips](https://avatars.githubusercontent.com/u/18812?v=4)](https://github.com/mphillips "mphillips (1 commits)")[![skaeser](https://avatars.githubusercontent.com/u/826943?v=4)](https://github.com/skaeser "skaeser (1 commits)")[![soderlind](https://avatars.githubusercontent.com/u/1649452?v=4)](https://github.com/soderlind "soderlind (1 commits)")[![swissspidy](https://avatars.githubusercontent.com/u/841956?v=4)](https://github.com/swissspidy "swissspidy (1 commits)")[![andyburnsco](https://avatars.githubusercontent.com/u/18341942?v=4)](https://github.com/andyburnsco "andyburnsco (1 commits)")[![mikelittle](https://avatars.githubusercontent.com/u/358499?v=4)](https://github.com/mikelittle "mikelittle (1 commits)")

---

Tags

securityuser-switchingwoocommercewordpresswordpress-plugin

###  Code Quality

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/johnbillion-user-switching/health.svg)

```
[![Health](https://phpackages.com/badges/johnbillion-user-switching/health.svg)](https://phpackages.com/packages/johnbillion-user-switching)
```

###  Alternatives

[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.3k10](/packages/helsingborg-stad-municipio)[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

45344.0k1](/packages/pressbooks-pressbooks)[civicrm/civicrm-drupal-8

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

19246.3k2](/packages/civicrm-civicrm-drupal-8)[pressbooks/pressbooks-book

This theme is named after Canadian media theorist Marshall McLuhan, who coined the phrase “the medium is the message.” It is designed for academic writing and is also suitable for fiction. Headings are set in Cormorant Garamond, and body type is set in Lora.

206.7k](/packages/pressbooks-pressbooks-book)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
