Description
Add passkey login to WordPress without replacing WordPress authentication. Users can sign in with a device’s biometric authentication, PIN, or security key, while username and password login remains available as a fallback.
Passkey Login
Passkeys provide a simpler alternative to typing a username and password. Because each credential is created for this site, passkeys reduce the risks associated with phishing and password reuse.
- Register, name, review, and remove multiple passkeys from the WordPress profile screen
- Show registration and last-used dates for each passkey
- Sign in with a passkey from the standard WordPress login screen
- Offer the same passkey login through the
[atshift_login]shortcode - Use passkeys synchronized by the device’s storage account on other devices, or register additional passkeys as needed
- Verify registration and login ceremonies on the WordPress server without an external authentication service
When atshift User Profile Fields is active, its optional Passkeys field can place the same management controls within the configured profile layout. Credentials and authentication remain managed by atshift Freeform Login.
Passkeys require PHP 8.3 or newer, the PHP JSON and OpenSSL extensions, and HTTPS. Localhost is supported for development. The design and shortcode features continue to work on PHP 7.4 or newer when the passkey requirements are not met.
Password login remains available as a fallback. Accounts should continue to use a long, unique password stored in a password manager.
The bundled WebAuthn and supporting libraries are MIT licensed. Package names and exact versions are recorded in composer.lock.
Login Screen Design
Customize the standard WordPress login screen while continuing to use WordPress authentication. The free plugin includes:
- Background colors and images
- A site-title brand display and introductory text
- Form placement, width, and responsive fallback controls
- Login form, button, link, and message colors
- A live preview before applying changes
- A matching login form for site pages with the
[atshift_login]shortcode - Jetpack SSO compatibility
When Jetpack SSO is active, its WordPress.com login UI is styled without replacing Jetpack authentication. The shortcode uses Jetpack automatically and respects Jetpack settings that hide or bypass the local login form.
Links
- Official website: upf.at-shift.net/en/freeform-login
Pro Add-on
The optional Pro add-on extends the design controls provided by the free plugin. It is installed alongside this free base plugin.
Pro adds custom logo images, precise position offsets, transparency, borders, corner radius, and detailed shadow controls. The free plugin remains usable without an add-on.
- Pro add-on: Upgrade to Pro
Shortcode
Use [atshift_login] to place a login form styled by this plugin on a site page.
Optional attributes include redirect, show_lost_password, remember, jetpack, and class.
Use [atshift_login jetpack="hide"] only when local username and password login remains available.
Related Projects
- atshift User Profile Fields – create configurable WordPress user profile screens and place the Freeform Login Passkeys controls within their layouts.
- at-shift Fields – arrange custom fields for posts and custom post types with a similar field-building experience.
Installation
- Upload the plugin folder to
/wp-content/plugins/. - Activate the plugin.
- Open Settings > atshift Freeform Login in the WordPress administration menu.
- Configure and save the design.
- Enable login-screen application after reviewing the preview.
- On PHP 8.3 or newer, open Users > Profile to register a passkey.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“atshift Freeform Login” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “atshift Freeform Login” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
2.0
- Added server-verified passkey registration and passwordless login for supported PHP 8.3 or newer HTTPS sites.
- Added profile management for multiple named passkeys with registration and last-used dates.
- Added passkey login to the WordPress login screen and
[atshift_login]shortcode alongside the existing password fallback. - Added optional placement of Passkeys controls within atshift User Profile Fields profile layouts.
1.0.0
- Initial release with responsive login customization, shortcode output, and Jetpack SSO compatibility.

