Breaks is_user_logged_in() conditional logic
-
I’ll preface this by thanking the developer(s) for the hard work in developing & sharing this plugin. On *most* sites, it appears to be working great.
However… this is a heads-up for anyone using this plugin in combination with WordPress conditional logic; specifically is_user_logged_in().
I manage a couple of sites that use WP Simple Membership and use conditional logic to display elements conditionally based on whether or not the visitor is logged in (specifically a sidebar menu).
I switched to Simple CAPTCHA with Cloudflare Turnstile from another spam filtering method a few weeks ago and didn’t initially notice any problems. But shortly after that, I noticed that any conditional logic referencing is_user_logged_in() was no longer working.
I also noticed that setting “Force User Synchronization” in the WP Simple Membership settings – which syncs the login status of members and WP users – was throwing an error that made the membership system inaccessible.
Additionally, membership files stored in a folder protected via .htaccess restricting access to wordpress_logged_in status became inaccessible to members.
After much messing around to sort this out, I cloned the site and disabled the custom theme and all plugins one by one and lo and behold, this plugin was the source of the problem. As soon as I disabled this plugin, all of the above functionality was restored.
Also of note: there is a Turnstile addon for WP Simple Membership which I tested – and it works just fine: no associated problems. In other words, it doesn’t appear to me that Turnstile is causing this cascade of issues, it’s some aspect of this plugin or how it’s configured that’s messing with the conditional logic.
Until there’s a fix for this, I’m moving all membership sites to an alternate CAPTCHA method. That said, I’ve left a development site in place for more testing if it’s necessary.
You must be logged in to reply to this topic.