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 WP PowerSuite Pro (install beside the free plugin and activate your 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.
Manage with WP-CLI
Section titled “Manage with WP-CLI”Prefer the command line? You can turn this module on or off with WP-CLI instead of the dashboard:
# Turn the module onwp powersuite module enable github-sign-in
# Turn the module offwp powersuite module disable github-sign-in
# Check whether it is on, its category, and where its settings livewp powersuite module get github-sign-inManaging more than one site? Add --url=https://example.com to point a command at one site. If this is a Pro module, install WP PowerSuite Pro and activate your license first. New to WP-CLI? See the full command guide.
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().