Membership and LMS plugins often separate login from registration, enrollment, checkout, or onboarding. VentraConnect Pro respects that separation: on supported integration login forms, Guardrails can prevent Social Login, Magic Link, and Email OTP from creating a new account and instead keep signup inside the integration's proper registration flow.
Login forms stay login forms
On supported membership and LMS login forms, VentraConnect Guardrails are designed to stop authentication buttons from becoming unintended registration shortcuts.
Magic Link and Email OTP still keep their own registration mode
Where Magic Link or Email OTP is available through a supported integration, each method still follows its own VentraConnect registration mode.
Authenticate existing users only
The method is not allowed to create a new WordPress account.
Registration-capable
The method may create a user only on a supported flow where account creation is intentionally allowed. It does not override a Guardrail that keeps the integration's login form existing-user-only.
Social Login depends on the integration flow
Social Login does not use the Magic Link / Email OTP Login Only or Login & Register selector.
On supported membership and LMS login forms, Guardrails can keep Social Login available for existing users without allowing a new visitor to create an account from that login surface. A new visitor should instead use the integration's proper registration, signup, checkout, or enrollment flow.
Passkeys use a separate registration flow
Passkeys are not governed by the Social Login / Magic Link / Email OTP Guardrail model. A Passkey is a credential attached to a WordPress user account and follows its own supported registration and setup flow.
Login, registration, enrollment, and checkout are different contexts
A membership or LMS plugin may expose several different user journeys. VentraConnect deliberately keeps those contexts separate so that a login button does not automatically become a public account-creation path.
This is especially important with Social Login. Without an account-creation restriction, a user who clicks a social provider on a login form could otherwise be treated as a new signup. VentraConnect's Guardrails let you keep Social Login available for existing users while requiring new visitors to use the proper registration flow.
Modern login without opening every login form to signup
VentraConnect is designed so that adding Social Login, Magic Link, or Email OTP does not mean every supported login form must also become a registration form.
Login can become registration
A new visitor may be able to create an account simply by using an authentication method on a login screen, even when that is not the intended signup path.
Login stays controlled
Existing users can use modern authentication on supported login forms, while new visitors are kept out of unintended account creation and directed toward the proper signup flow.
Validate each supported integration in its real user journey
- Identify the integration's existing-user login page or form.
- Identify its intended new-user registration, membership checkout, or enrollment path.
- If using Magic Link or Email OTP, confirm whether the method is set to Login Only or Login & Register.
- Test the login surface with an existing WordPress user.
- Test that same surface with a completely new email.
- Test the integration's legitimate new-user flow separately and confirm that account creation behaves as intended.
What VentraConnect Pro provides
VentraConnect Pro provides supported authentication placements across membership/community and LMS integrations. The exact placement and account-creation behavior should be documented on the individual integration guide rather than described as one universal membership/LMS Guardrail.
Supported integration family
Supported integration family
Use the individual integration guide as the final source of truth
This page explains the account-creation model at a high level. When we document a specific membership or LMS plugin, that integration's guide should state exactly: