GitHub Sign-in
GitHub Sign-in offers one-click GitHub login for developers and technical visitors - fewer passwords, optional automatic new accounts, and shortcode support for custom layouts.
Requires an active WP PowerSuite license.
What it does
Section titled “What it does”- Uses GitHub OAuth once Client ID and Client Secret are saved.
- Shows a GitHub button on the login screen (and optionally WooCommerce).
- Supports shortcodes
[github_sign_in]and[social_login providers="github"]. - Callback URL uses
?wpps_auth=githubon your site home (register this URI in the GitHub OAuth App). A legacyadmin-ajax.phpcallback is still supported if listed in your app. - Optional auto-register (requires a verified GitHub email), default role, store GitHub avatar URL, allow GitHub sign-up during OAuth, redirect after login, and button style/display.
- Warns when the site is not on HTTPS.
Until Client ID and Client Secret are both set, the module does not boot the sign-in UI or callback handling.
When to use it
Section titled “When to use it”- Your audience already has GitHub accounts (docs, SaaS, developer communities).
- You’re combining providers with
[social_login]. - You want optional auto-provisioned WP users from verified GitHub emails.
When not to use it
Section titled “When not to use it”Settings
Section titled “Settings”Open the module’s advanced settings (gear icon):
| Setting | Key | Notes |
|---|---|---|
| Client ID | client_id |
Required. From GitHub OAuth Apps. |
| Client Secret | client_secret |
Required. |
| Allow GitHub Sign-up | allow_signup |
Show create-account option in GitHub’s OAuth UI (default on). |
| Button style | button_style |
default (Filled), outline, or minimal. |
| Label & icon | button_display |
label or icon. |
| Inline row | button_label_inline |
Optional layout for text + icon. |
| Auto-register New Users | auto_register |
Create a WP user on first GitHub sign-in (verified email required). |
| Bypass “Anyone can register” | bypass_registration_setting |
Allow registration even when WP registration is off. |
| Default role | default_role |
subscriber (default), contributor, author, or editor. |
| Store GitHub Avatar | store_avatar_url |
Store GitHub profile image meta. |
| Redirect after login | redirect_after_login |
Optional destination; blank = homepage. |
| WooCommerce | woo_login |
Show on WooCommerce login forms when WooCommerce is active. |
Copy the Authorization callback URL from settings into GitHub -> Settings -> Developer settings -> OAuth Apps. Public callback form: https://your-site.com/?wpps_auth=github.
Shortcodes
Section titled “Shortcodes”[github_sign_in]- GitHub-only button.[github_sign_in style="outline"]- style override.[social_login providers="github"]- unified social shortcode.
How to enable it
Section titled “How to enable it”- Create an OAuth App at GitHub Developer settings.
- Set Homepage URL and paste the Authorization callback URL from module settings.
- In WordPress: WP PowerSuite -> Modules -> GitHub Sign-in - turn on (license required).
- Paste Client ID and Client Secret, save, then tune registration / button options.
How to test it
Section titled “How to test it”- Log out and open
wp-login.php(or a page with[github_sign_in]). - Click Sign in with GitHub and authorize the app. ✅ Existing linked user: signed in.
- ✅ New user with auto-register on + verified email: account created.
- ❌ Error / no button: confirm credentials, callback URI, HTTPS, and license.
- If Store GitHub Avatar is on, confirm the photo appears (unless a Local User Avatar upload exists - local wins).
Troubleshooting
Section titled “Troubleshooting”- No GitHub button. Client ID/secret missing or license inactive.
- redirect_uri mismatch. Callback in GitHub must exactly match settings (
?wpps_auth=github). - New users not created. Enable Auto-register; ensure the GitHub account has a verified email.
- Wrong landing page. Set Redirect after login, or use Redirect After Login.
What GitHub credentials do I need?
An OAuth App Client ID and Client Secret, plus the Authorization callback URL from module settings. HTTPS is strongly recommended.
What shortcodes are available?
Use [github_sign_in] for GitHub alone, or [social_login providers="github"] for the unified social login shortcode.
Why must GitHub emails be verified for new accounts?
Auto-registration only accepts a verified GitHub email so new WordPress users are not created from unverified addresses.
What is the OAuth callback URL?
https://your-site.com/?wpps_auth=github - copy the exact URL from module settings into your GitHub OAuth App.
Developer notes (hooks & filters)
Source: modules/github-sign-in/module.php, Provider.php, Config.php, admin.php. Boot: critical. Uses SocialSignInModuleTrait. License required.
- Callback query param:
wpps_auth=github(UrlHelper::AUTH_QUERY_PARAM- notwpps_oauth). - Public callback:
home_url('/?wpps_auth=github'). - Legacy AJAX:
admin-ajax.php?action=wpps_github_signin_callback. - User meta:
wpps_github_id. - Error query arg:
wpps_github_error. - New registrations require
email_verifiedfrom GitHub’s emails API. - Shortcodes: legacy
github_sign_in; unifiedsocial_login. - Does not register social hooks until both
client_idandclient_secretare non-empty. - HTTPS notice via
SettingsUiHelper::renderHttpsNotice().