
atshift Freeform Login adds server-verified passkey registration and login to WordPress while keeping the standard WordPress authentication flow and password fallback.
Passkeys let users sign in with a device’s biometric authentication, PIN, or security key instead of typing a username and password. Because each credential is created for this site, passkeys reduce the risks of phishing and password reuse.
Users can register, name, and remove up to five passkeys from the standard WordPress profile screen. The current registration count is shown from 0/5 through 5/5. Synced passkeys may also be available on other devices using the same storage account. After the first passkey is registered on the site, a passkey login button appears on the WordPress login screen and in the [atshift_login] shortcode.
If WP-Members or another plugin already provides the username and password form, [atshift_passkey_login] can add only the passkey button beside it. Username and password login remains available as a fallback, so users should keep a long, unique password and store it in a password manager.
Passkey support is available on PHP 8.3 or newer when the PHP JSON and OpenSSL extensions are enabled and the site uses HTTPS. Localhost is supported for development. The rest of the plugin continues to run on its stated minimum PHP version when the passkey module is unavailable.
Passkey ceremonies are verified on the WordPress server and do not require an external authentication service. The bundled WebAuthn and supporting libraries are MIT licensed; package names and exact versions are recorded in composer.lock.
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.
When atshift Members is active, its account editing screen can show the same passkey management controls with or without User Profile Fields. Its account-withdrawal flow asks Freeform Login to erase the departing user’s passkey credentials and index entries before deletion is completed.
Login screen design and shortcodes
The plugin also customizes the standard WordPress login screen without replacing WordPress authentication. The free version includes background colors and images, a site-title brand display, form placement and width, core color controls, responsive fallback, a live preview, the login shortcode, and 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. Use [atshift_login jetpack="hide"] only when local username and password login remains available.
English is provided by the plugin source. Bundled translations are included for Japanese, Spanish, German, French, Brazilian Portuguese, Italian, Russian, Dutch, Simplified Chinese, Polish, Turkish, Indonesian, Traditional Chinese (Taiwan), and Korean.
Links
- Official website: plugins.at-shift.net/en/freeform-login
Shortcodes
Use [atshift_login] for the complete username, password, and passkey login experience.
If WP-Members or another plugin already provides the username and password form, place [atshift_passkey_login] beside it to output only the passkey button. It accepts redirect, remember, and class. remember defaults to false; use remember="true" to request WordPress’s persistent login cookie.
The standalone button is omitted when the visitor is already logged in, passkeys are unavailable, no passkey has been registered on the site, or Jetpack SSO disables local login.
If another plugin provides a frontend profile page, place [atshift_passkey_profile] on it to let the currently logged-in user add, review, and delete their own passkeys. It accepts heading and class; use heading="false" when the surrounding page already supplies the section heading. The shortcode never accepts a user ID, outputs nothing for logged-out visitors, and marks the page as non-cacheable and noindex, nofollow. The membership or profile plugin remains responsible for requiring a login for the whole page.
Pro Add-on
The optional Pro add-on extends the free plugin with custom logo images, precise position offsets, transparency, borders, corner radius, and detailed shadow controls. The free plugin remains usable without an add-on.
You can try the complete Pro design controls on one site for seven days without entering card details. The trial does not renew or charge automatically. When it ends, only Pro design controls stop; Free login, passkeys, Free settings, and saved Pro design values remain intact. A purchased license re-enables the saved Pro design.
- Pro add-on: Try Pro for 7 days or purchase
Related Projects
- atshift User Profile Fields – create practical WordPress user profile fields and optionally place Freeform Login passkey controls within its profile layouts.
- at-shift Fields – arrange custom fields for posts and custom post types with a similar field-building experience.
- atshift Feed Builder – create purpose-specific RSS 2.0 and JSON Feed 1.1 feeds from structured WordPress content.
Screenshots

A customized WordPress login screen places passkey login above the standard username and password fallback.

Users can register a passkey from their WordPress profile, with guidance about passkeys and password security.

Registered passkeys show a recognizable name, registration date, last-used date, and a delete action.

The visual design editor provides grouped controls and responsive previews before login-screen changes are enabled.