Description
WebPlatform Social Login adds secure social sign-in buttons to WordPress.
Features:
- Verifies Google ID token signatures using Google’s published public keys.
- Supports Facebook OAuth, LinkedIn OpenID Connect and Microsoft OpenID Connect.
- Supports Sign in with Apple, including dynamic ES256 client assertions.
- Validates token audience, issuer, expiry, email verification and nonce.
- Protects login requests with short-lived, HttpOnly state cookies.
- Encrypts provider secrets and Apple private keys at rest using WordPress authentication salts.
- Connects existing users by verified email.
- Optionally creates new WordPress users.
- Displays on WooCommerce login and registration forms.
- Displays on standard WordPress login and registration forms.
- Optionally offers Google One Tap to logged-out visitors using the Google account active in their browser.
- Includes
[webplatform_social_login]for custom pages. - Supports local post-login redirects and optional email-domain restrictions.
- Integrates with WordPress personal-data export and erasure tools.
No Google Client Secret is stored or required. Other providers require their standard application credentials.
External services
This plugin connects to external identity services only when the site owner enables them. When Google One Tap is enabled, Google Identity Services may be loaded for logged-out visitors before they choose to sign in.
- The browser downloads the Google Identity Services library from
https://accounts.google.com/gsi/clientwhen a login button is displayed. The site’s OAuth Client ID and standard browser request information are sent to Google. - After the visitor chooses a Google account, Google returns a signed identity token to the website. The token contains the account identifier and basic profile fields approved by the visitor.
- The server periodically downloads public signing keys from
https://www.googleapis.com/oauth2/v3/certsto verify tokens. No visitor identity data is sent when public keys are downloaded.
This service is provided by Google under the Google APIs Terms of Service and Google Privacy Policy.
For enabled OAuth providers, the visitor is sent to the provider’s authorization page. The plugin sends the application Client ID, callback URL, requested basic-profile/email scopes, and a random state value. The provider sends an authorization code back to the website. The server exchanges that code and requests the visitor’s identifier, name, verified email and optional profile image.
- Facebook endpoints use
facebook.comandgraph.facebook.com. Meta Platform Terms and Meta Privacy Policy. - LinkedIn endpoints use
linkedin.comandapi.linkedin.com. LinkedIn API Terms and LinkedIn Privacy Policy. - Microsoft endpoints use
login.microsoftonline.comandgraph.microsoft.com. Microsoft APIs Terms and Microsoft Privacy Statement. - Apple endpoints use
appleid.apple.com. The plugin also downloads Apple’s public signing keys to validate ID tokens. Sign in with Apple terms and Apple Privacy Policy.
Privacy
When a visitor uses a social provider, that provider returns an account identifier and basic profile fields such as name, verified email address and profile image. The plugin stores the provider account identifier and profile image URL in WordPress user metadata. WordPress core stores the user’s name and email as part of the user account.
The browser loads Google’s Identity Services JavaScript from accounts.google.com when Google login is configured. Other providers are contacted only when their button is selected. Site owners should disclose enabled external services in their privacy policy and obtain any consent required in their jurisdiction.
Plugin metadata is available through WordPress personal-data export and erasure tools.
Installation
- Upload the
webplatform-social-loginfolder to/wp-content/plugins/. - Activate WebPlatform Social Login.
- In Google Cloud, create an OAuth 2.0 Client ID of type Web application.
- Add your HTTPS website origin under Authorized JavaScript origins.
- Open Settings > WebPlatform Social Login and enter the Client ID.
- Add
[webplatform_social_login]to any custom login page, or enable WooCommerce placement.
For another provider, create its web application, copy the exact callback URL displayed in the plugin settings, enter the credentials, and enable the provider.
The settings screen includes step-by-step examples for every provider, including the current site’s exact origin, domain, callback URLs, required products and requested scopes.
FAQ
-
Is a Google Client Secret required?
-
No. This plugin uses the Google Identity Services ID-token flow and validates signed tokens on the server.
-
Does the plugin create users automatically?
-
Only when account creation is enabled in the plugin and the provider email is verified.
-
Can login be limited to an organization?
-
Yes. Enter one or more comma-separated email domains in the settings.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“WebPlatform Social Login” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “WebPlatform Social Login” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.4.4
- Renamed the plugin to WebPlatform Social Login.
- Restricted social-login account creation to the low-privilege Customer or Subscriber role.
1.4.3
- Added explicit external-script versioning and documented the required provider-identity lookup.
1.4.2
- Resolved WordPress Plugin Check internationalization, sanitization and compatibility findings.
1.4.1
- Prevented duplicate Google buttons and repeated front-end configuration.
1.4.0
- Added optional Google One Tap sign-in and registration prompts for logged-out visitors.
- Preserved explicit Facebook, LinkedIn, Microsoft and Apple authorization buttons.
1.3.0
- Added standard WordPress login and registration placement.
- Suppressed duplicate output from the obsolete WordPress Social Login plugin.
- Added migration guidance when the replaced plugin remains active.
1.2.0
- Added site-specific configuration examples for every provider.
- Added provider console links, required products, scopes, domains and callback instructions.
1.1.0
- Added Facebook OAuth login.
- Added LinkedIn OpenID Connect login.
- Added Microsoft OpenID Connect login.
- Added Sign in with Apple.
- Added encrypted credential storage and provider-specific callback settings.
1.0.0
- Initial release.