AuthGate by 22MW releasesself-updates
AuthGate by 22MW - Frontend authentication & access control for WordPress
by 22MW · The Capricho Studio · github.com/22mw/authgate · website
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/22mw/authgate/releases/download/v1.2.4/authgate.zipShips its own WordPress updater (built-in updater), so new versions show up under Dashboard → Updates.
Readme
=== WP AuthGate === Contributors: 22mw Tags: login, register, authentication, access control, woocommerce Requires at least: 6.5 Tested up to: 6.7 Requires PHP: 8.1 Stable tag: 1.2.4 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html
Frontend authentication & access control for WordPress — custom login, register and password-reset forms with GDPR consent, spam protection, and WooCommerce support.
== Description ==
WP AuthGate replaces the default WordPress login and registration flow with a polished, fully-customisable frontend experience. It ships with:
- Custom login form — shortcode
[authgate_login] - Custom registration form — shortcode
[authgate_register] - Combined form — shortcode
[authgate_combined](tab-based login + register) - Password reset — shortcode
[authgate_reset] - Page protection — automatic restriction for private/pages-requiring-login via the plugin logic; no dedicated protected shortcode
- Popup / overlay mode — embed any form inside a modal triggered by a button
- GDPR checkbox — required consent field with configurable privacy-policy link
- Newsletter opt-in — optional checkbox wired to Mail Mint (or any hook)
- Spam protection — honeypot field + submission timestamp check
- Rate limiting — per-IP lockout via WordPress transients
- WooCommerce integration — creates WooCommerce customers, respects auto-password setting, protects My Account pages, forwards WC registration hooks
- Standalone login page — optional minimal page (no theme header/footer) with custom slug
- Technical-route blocking — redirect
/wp-admin,wp-login.phpandwp-signup.phpto the home page or to the custom login slug - Multisite-ready — network-level registration policy plus per-site text/CSS and WooCommerce password settings
WP AuthGate is hook-driven. Every behaviour can be extended or overridden from a theme or add-on plugin without editing core files.
= WooCommerce integration =
When WooCommerce is active, WP AuthGate automatically:
- Creates new accounts as WooCommerce customers (
wc_create_new_customer) - Redirects after login to the My Account page
- Hides the password field when WooCommerce is configured to auto-generate passwords
- Forwards the
woocommerce_register_formaction inside the registration form - Protects the My Account page and all its endpoints
= Developer hooks =
authgate_default_redirect— filter the post-login redirect URLauthgate_create_user— filter/override user creation (receives$user_id,$email,$password)authgate_registration_allowed— filter whether registration is openauthgate_show_password_field— filter whether the password field is displayedauthgate_register_form_fields— action fired inside the registration formauthgate_is_protected_page— filter whether the current page requires loginauthgate_user_registered— action fired after a successful registration ($user_id,$email,$first_name,$last_name,$opt_in)
== Installation ==
- Upload the
authgatefolder to/wp-content/plugins/. - Activate the plugin through Plugins > Installed Plugins.
- Go to Settings > AuthGate Config (or Network Admin > Settings > AuthGate Config on Multisite) and configure labels, redirects, and optional integrations.
- Add the desired shortcode to any page.
== Frequently Asked Questions ==
= Does it work without WooCommerce? =
Yes. WooCommerce support is loaded only when WooCommerce is active. All core features work on plain WordPress.
= Can I style the forms to match my theme? =
The forms inherit your theme's input, label, and button styles. WP AuthGate only adds structural CSS (widths, spacing, layout). You can override any class in your theme stylesheet.
= Is it compatible with Multisite? =
Yes. Multisite can use network-level registration settings while each site can keep its own text overrides, CSS mode and WooCommerce generated-password setting.
= Where is the admin area blocked? =
WP AuthGate can redirect non-authenticated users away from /wp-admin, wp-login.php, and wp-signup.php. The destination can be the home page or the custom login slug. Password-reset flows (action=rp, action=resetpass, action=lostpassword) are always allowed.
== Screenshots ==
- Combined login/register form with tab navigation.
- Standalone login page (no theme header/footer).
- Settings panel in WordPress admin.
== Changelog ==
= 1.2.4 =
- Added a setting to choose whether blocked technical routes redirect to the home page or to the custom login slug.
- Applied the technical-route destination to
/wp-admin,wp-login.php, andwp-signup.php. - Documented multisite per-site settings more accurately.
= 1.2.3 =
- Updated plugin metadata, author details, license URI and compatibility requirements.
= 1.2.2 =
- Restored the WooCommerce generated-password setting in each multisite site where WooCommerce is active.
- Improved multisite network registration copy so it matches the global registration behavior.
- Improved site-level AuthGate header, global configuration link and save toast behavior.
- Fixed the site-level AuthGate admin layout margin on multisite screens.
= 1.2.1 =
- Added multisite-aware settings for network, site and fallback behavior.
- Added per-site text overrides with fallback to network/default values.
- Added per-site CSS mode to inherit global CSS, override it or disable custom CSS locally.
- Added network-level registration policy control from AuthGate.
- Fixed unauthenticated
/wp-adminredirect in multisite to use the configured AuthGate login slug. - Improved AuthGate admin save toasts and CSS settings layout.
- Adjusted protected-page logo behavior and standalone login logo home link.
= 1.2.0 =
- Added the 22MW visual admin shell for the AuthGate settings area.
- Added reusable 22MW admin CSS/JS base assets.
- Added dark/light admin mode, horizontal navigation and vertical internal subnavigation.
- Added searchable excluded-pages selector with removable chips.
- Improved settings cards, controls, tables, CodeMirror styling and save notifications.
- Normalized AuthGate admin CSS/JS so plugin-specific files only contain AuthGate-specific overrides.
= 1.1.1 =
- Added registration controls for native WordPress registration and WooCommerce generated passwords.
- Added popup shortcode
labeland improved popup button class support. - Added inline home link and Mail Mint conditional display.
- Added WYSIWYG intro text for inline login, register and combined forms.
- Moved form texts to a dedicated settings tab with independent saving.
- Added optional custom CSS tab with CodeMirror editor, activation checkbox, sanitization and white/dark presets.
- Improved protected-page card layout, logo handling and default form styling.
= 1.1.0 =
- Added multisite support: network admin settings page for global options; per-subsite settings page for exclusions and Mail Mint list.
- Added
login_slug_redirectsetting: configurable redirect after login from the standalone login page. - Added GitHub Releases auto-updater — updates appear in Dashboard › Updates.
- Added AJAX settings save with snackbar Toast notification (no page reload).
- Added
uninstall.phpfor full cleanup on plugin deletion. - Fixed media library button not opening in network admin context.
= 1.0.0 =
- Initial public release.
- Custom login, register, combined, and password-reset forms via shortcodes.
- GDPR consent and newsletter opt-in checkboxes.
- Honeypot + timestamp spam protection.
- Rate limiting via transients.
- WooCommerce integration (customers, My Account redirect, auto-password, page protection).
- Mail Mint newsletter subscription support.
- Popup / overlay form mode.
- Standalone login page with configurable slug.
- Multisite support (network-level settings and options).
- Full i18n readiness (text domain
authgate,languages/folder).
== Upgrade Notice ==
= 1.2.4 = Adds configurable technical-route redirect destination. No migration required.
= 1.2.3 = Metadata and compatibility declaration update. No migration required.
= 1.2.2 = Multisite site-level WooCommerce and admin UI fixes. No migration required.
= 1.2.1 = Multisite settings and admin UX improvements. No migration required.
= 1.2.0 = Admin UI refresh and settings experience improvements. No migration required.
= 1.0.0 = Initial release — no upgrade steps required.
Read the full README on GitHub →