

Login screen with Google option added.
Ultra minimal plugin to let your users login to WordPress applications using their Google accounts. No more remembering hefty passwords!
Create a project from Google Developers Console if none exists.
Go to Credentials tab, then create credential for OAuth client.
YOUR_DOMAIN/wp-login.php in Authorized redirect URIsThis will give you Client ID and Secret key.
Input these values either in WP Admin > Settings > WP Google Login, or in wp-config.php using the following code snippet:
define( 'WP_GOOGLE_LOGIN_CLIENT_ID', 'YOUR_GOOGLE_CLIENT_ID' );
define( 'WP_GOOGLE_LOGIN_SECRET', 'YOUR_SECRET_KEY' );
These browsers are supported. Note, for example, that One Tap Login is not supported in Safari.
You can enable user registration either by
– Enabling Settings > WP Google Login > Enable Google Login Registration
OR
define( 'WP_GOOGLE_LOGIN_USER_REGISTRATION', 'true' );Note: If the checkbox is ON then, it will register valid Google users even when WordPress default setting, under
Settings > General Settings > Membership > Anyone can register checkbox
is OFF.
By default, when you enable user registration via constant WP_GOOGLE_LOGIN_USER_REGISTRATION or enable Settings > WP Google Login > Enable Google Login Registration, it will create a user for any Google login (including gmail.com users). If you are planning to use this plugin on a private, internal site, then you may like to restrict user registration to users under a single Google Suite organization. This configuration variable does that.
Add your domain name, without any schema prefix and www, as the value of WP_GOOGLE_LOGIN_WHITELIST_DOMAINS constant or in the settings Settings > WP Google Login > Whitelisted Domains. You can whitelist multiple domains. Please separate domains with commas. See the below example to know how to do it via constants:
define( 'WP_GOOGLE_LOGIN_WHITELIST_DOMAINS', 'example.com,sample.com' );
Note: By default, whitelisted domain restrictions apply to both registration and login for existing accounts. To allow existing users to log in with Google regardless of domain allowlist, use the rtcamp.google_enforce_whitelisted_domains_on_login filter and return false.
For a list of all hooks please refer to this documentation.
WP_GOOGLE_LOGIN_CLIENT_ID (string): Google client ID of your application.
WP_GOOGLE_LOGIN_SECRET (string): Secret key of your application
WP_GOOGLE_LOGIN_USER_REGISTRATION (boolean) (optional): Set true If you want to enable new user registration. By default, user registration defers to Settings > General Settings > Membership if constant is not set.
WP_GOOGLE_LOGIN_WHITELIST_DOMAINS (string) (optional): Comma-separated list of allowed domains for login and registration. When configured, restricts authentication and account creation to matching email domains. By default, it will allow all domains. You can whitelist multiple domains.