Prevent Concurrent Logins

Plugin Banner

Prevent Concurrent Logins

by Frankie Jarrett

Download
Description

Did you find this plugin helpful? Please consider leaving a 5-star review.

  • Deters members/subscribers from sharing their accounts with others
  • Hardens security by destoying old sessions automatically
  • Prompts old sessions to login again if they want to continue
  • Ideal for membership sites and web applications

Important: If you plan to network-activate this plugin on a multisite network, please install the Proper Network Activation plugin beforehand.

Development of this plugin is done on GitHub. Pull requests welcome. Please see issues reported there before going to the plugin forum.

Where are the options for this plugin?

This plugin does not have a settings page. Simply put, I don’t like bloating my plugins with a bunch of options.

Instead, I try to develop functionality using the 80/20 principle so that for 80% of use cases you all you need to do is activate the plugin and it “just works”.

For the other 20% of you who want things to behave differently there are hooks available in the plugin so you can customize default behaviors.

Can I still allow concurrent logins for certain users?

Yes, simply add this code to your theme’s functions.php file or as an MU plugin:

function my_pcl_whitelist_user_ids( $prevent, $user_id ) {

    $whitelist = array( 1, 2, 3 ); // Provide an array of whitelisted user IDs

    return in_array( $user_id, $whitelist ) ? false : $prevent;

}
add_filter( 'pcl_prevent_concurrent_logins', 'my_pcl_whitelist_user_ids', 10, 2 );

Or this code to bypass users with certain roles:

function my_pcl_whitelist_roles( $prevent, $user_id ) {

    $whitelist = array( 'administrator', 'editor' ); // Provide an array of whitelisted user roles

    $user = get_user_by( 'id', absint( $user_id ) );

    $roles = ! empty( $user->roles ) ? $user->roles : array();

    return array_intersect( $roles, $whitelist ) ? false : $prevent;

}
add_filter( 'pcl_prevent_concurrent_logins', 'my_pcl_whitelist_roles', 10, 2 );

Awesome!!

By mcostam1985 on February 2, 2021

Your awesome man! This plugin with your functions.php code works perfectly. Thank you so much for the time spent working on it.

This plugin is great and has not required any update for 4 years

By nddao on August 13, 2020

THIS PLUGIN IS SIMPLE AND PERFECT THAT THE AUTHOR HAS NOT NEED TO UPDATE ANYTHING SINCE LAST 4 YEARS. I had to create an account just to give this plugin a 5-star rating and let people know that it works perfectly. I was looking for something to prevent users from concurently login and found this plugin. However, the age of this plugin and the number of active installation (1000+ at this time) made me skip it. The information that this plugin was updated 4 years ago further drove me away. I decided to install another plugin, which made me crazy because it kept log me out every couple minutes. Then I removed the mentioned plugin and gave this plugin a try, and it works as much as I expect.

GREAT!

By César (easytomake) on December 12, 2019

I tried it on my easytomake online course site, and used 3 browsers. Disconnect the others! Thank you CÉSAR

Great!

By Eder Tuffic on November 12, 2018

It was exactly what I needed for my course. Thank you!

Muito bom

By uilianv on April 5, 2017

Faz o que promete, resolve o problema, sem nenhum requinte desnecessário

Super!

By Vasily (vdvortsov) on March 18, 2017

Love the functionality. Exactly what i need now. Thank you very much!

Excellent, Works Perfect on my Site

By dmolina1309 on March 8, 2017

It works super well It was exactly what I was looking for

Great Plugin

By dramitstalbot on September 3, 2016

Working out of the box.... Superb 🙂

must have !!!

By yucelsnc (Yucel.S.n.C.3D) on September 3, 2016

This plugin is a must have if you running an membership site.
so far the best plugin to prevent multiple logins i have seen.
lightweight and stable,i totally can recommend this plugin.
Greets Yücel

A must for membership sites

By ranscendending2b on September 3, 2016

It's easy to forget all about this plugin because it does its job so well!!

0.4.0 – October 16, 2015

  • Official support for WordPress 4.3

Props fjarrett

0.3.0 – May 4, 2015

  • Action hooks now available after sessions are destroyed for logging purposes (#4)

Props fjarrett

0.2.0 – January 28, 2015

  • Destroy old sessions for all users upon activation

Props fjarrett, chuckreynolds

0.1.1 – January 2, 2015

  • Added filter to allow certain users to have concurrent sessions when necessary

Props fjarrett, nutsandbolts

0.1.0 – December 31, 2014

  • Initial release

Props fjarrett

Back to top