# Como corrigir o Social Login que não funciona no Tutor LMS

O Social Login do Tutor LMS para de funcionar quando o addon está desativado, o Tutor LMS Pro não está ativo, as credenciais do provedor (Client ID do Google ou App ID do Facebook) estão incorretas, ou a URL de redirecionamento no console do provedor não casa com a do site.

## O que é Social Login no Tutor LMS?

O Social Login do Tutor LMS é um addon exclusivo do Tutor LMS Pro que adiciona botões de entrada com Google, Facebook e X (Twitter) à tela de login do aluno. Em vez de digitar usuário e senha, o aluno autentica pela conta da rede social e o Tutor LMS cria ou vincula o usuário no WordPress. A autenticação acontece via OAuth: o provedor verifica a identidade e devolve o usuário ao site por uma URL de redirecionamento previamente cadastrada.

O recurso deixa de funcionar quando algum elo dessa cadeia quebra. Os botões somem da tela de login quando o addon está desabilitado ou o Tutor LMS Pro está inativo. Quando os botões aparecem mas o login falha, o problema costuma estar nas credenciais (Client ID, App ID ou API Key digitados errados) ou na URL de redirecionamento que o provedor exige e que precisa bater exatamente com o domínio do site, incluindo o esquema https e a barra final.

## Como identificar

- Os botões de Entrar com Google ou Entrar com Facebook não aparecem na tela de login do Tutor LMS, mesmo após salvar as configurações.
- Ao clicar no botão social, o provedor retorna a mensagem 'redirect_uri_mismatch' ou 'The redirect URI in the request does not match'.
- O Facebook exibe 'URL Blocked: This redirect failed because the redirect URI is not whitelisted in the app's Client OAuth Settings'.
- O login social inicia, abre a janela do provedor, mas o usuário volta ao site deslogado, sem criar conta nem iniciar sessão.
- A aba de configuração do Social Login não aparece em Tutor LMS Pro porque o addon não foi habilitado em Add-ons.

**Antes de começar:** Trate Client Secret, App Secret e API Secret Key como senhas: não os exponha em prints públicos nem em código versionado, e antes de mexer nas configurações em produção faça um backup do site ou teste primeiro em staging para poder reverter.

## Como prevenir

- Mantenha o Tutor LMS Pro com a licença ativa e renovada, já que o Social Login deixa de existir se a versão Pro for desativada.
- Cadastre a URL de redirecionamento no provedor já no formato final do site (https com ou sem www, definido pelo seu domínio canônico) para evitar o erro redirect_uri_mismatch após migrações.
- Documente em local seguro quais credenciais pertencem a qual provedor para não trocar Client ID por App ID nos campos.
- Após publicar o site, lembre de mudar o app do Facebook para Live e publicar a tela de consentimento do Google, saindo do modo de teste antes de liberar o login para os alunos.

Erros relacionados

- [Como corrigir o arquivo de cursos que não exibe todos os cursos no Tutor LMS](https://full.services/wp-fixer/corrigir-course-archive-tutor-lms/)
- [Como corrigir a Wishlist que não salva cursos no Tutor LMS](https://full.services/wp-fixer/corrigir-wishlist-tutor-lms/)
- [Como corrigir o recurso Multi-instructor que não funciona no Tutor LMS](https://full.services/wp-fixer/corrigir-multi-instructor-tutor-lms/)

## Causa

- O addon Social Login não foi habilitado em Tutor LMS Pro > Add-ons; sem isso a aba de autenticação social e os botões de login não são gerados.
- O Tutor LMS Pro está inativo ou com licença não renovada, e o Social Login é um recurso exclusivo da versão Pro, então o addon nem fica disponível na versão gratuita.
- O Client ID do Google ou o App ID do Facebook foi colado com espaços extras, incompleto ou trocado entre provedores no campo da aba Authentication, fazendo o OAuth retornar credencial inválida.
- A URL de redirecionamento cadastrada no console do provedor (Google Cloud Console ou Facebook for Developers) não casa exatamente com a do site, divergindo no https, no www ou na barra final, gerando o erro redirect_uri_mismatch.
- No Facebook for Developers o app está em modo de Desenvolvimento ou sem a Login do Facebook configurada, então só contas de teste conseguem autenticar e usuários reais voltam deslogados.
- A tela de login padrão do Tutor LMS foi substituída por um formulário de outro plugin (membership ou page builder), e esse formulário não renderiza os botões sociais do addon.

## Como resolver

1. Confirme o Tutor LMS Pro ativo e habilite o addon: O Social Login é um recurso exclusivo do Tutor LMS Pro. Confirme que o plugin Pro está ativo com a licença válida e habilite o addon na tela de Add-ons. Sem habilitar o addon, a aba de autenticação social e os botões de login não existem.

```
Painel WP -> Plugins -> confirme que o Tutor LMS Pro está Ativo
Painel WP -> Tutor LMS Pro -> Add-ons
Localize o card 'Social Login' e ligue o botão de ativação
```

2. Ative o provedor e cole as credenciais corretas: Abra a aba de autenticação e habilite só os provedores que vai usar, colando a credencial certa de cada um. O Google exige o Client ID, o Facebook exige o App ID e o X (Twitter) exige API Key e API Secret Key. Cole cada valor no campo do provedor correspondente, sem espaços no início ou no fim.

```
Painel WP -> Tutor LMS Pro -> Settings -> aba Authentication
Na seção Social Login, ative o provedor desejado (Google, Facebook ou X)
Cole o Client ID (Google) ou App ID (Facebook) no campo do provedor e clique em Save Changes
```

3. Cadastre a URL de redirecionamento exata no provedor: No console do provedor, cadastre como URI de redirecionamento autorizada exatamente a URL do seu site. Qualquer divergência no https, no www ou na barra final dispara o erro redirect_uri_mismatch. Copie a URL de retorno mostrada pelo Tutor LMS e cole sem alterar.

```
Google Cloud Console -> APIs e Serviços -> Credenciais -> OAuth 2.0 Client ID -> Authorized redirect URIs
Facebook for Developers -> seu app -> Login do Facebook -> Settings -> Valid OAuth Redirect URIs
Cole a URL de retorno exata do site (com https e barra final) e salve
```

4. Coloque o app do provedor em produção: Tire o app do modo de desenvolvimento para que usuários reais consigam autenticar. No Facebook, mude o app de Development para Live; no Google, publique a tela de consentimento OAuth para sair do modo de teste, que só permite contas adicionadas manualmente.

```
Facebook for Developers -> seu app -> alterne o modo de Development para Live no topo
Google Cloud Console -> APIs e Serviços -> Tela de consentimento OAuth -> Publicar app
```

5. Garanta que a tela de login renderiza os botões: Se outro plugin de membership ou page builder substituiu o formulário de login do Tutor LMS, os botões sociais podem não ser exibidos. Use a página de login padrão do Tutor LMS e teste em uma aba anônima do navegador para validar sem cache nem sessão antiga.

```
Painel WP -> Tutor LMS Pro -> Settings -> confirme a página de login do Tutor LMS
Abra a tela de login em uma janela anônima e teste o botão social
Desative temporariamente plugins que substituem o login para isolar o conflito
```


## Código

```php
<?php
// Reseta a tela de login do WordPress para a página de login do Tutor LMS,
// garantindo que os botões de Social Login do addon sejam renderizados.
add_filter( 'login_url', 'full_tutor_login_redirect', 10, 3 );
function full_tutor_login_redirect( $login_url, $redirect, $force_reauth ) {
    if ( ! function_exists( 'tutor_utils' ) ) {
        return $login_url;
    }
    $tutor_login = tutor_utils()->get_option( 'login_url' );
    if ( empty( $tutor_login ) ) {
        return $login_url;
    }
    $url = $tutor_login;
    if ( ! empty( $redirect ) ) {
        $url = add_query_arg( 'redirect_to', rawurlencode( $redirect ), $url );
    }
    return $url;
}
```

## Perguntas frequentes

### Por que os botões de login social não aparecem no Tutor LMS

Quase sempre o addon Social Login não foi habilitado ou o Tutor LMS Pro está inativo. Vá em Tutor LMS Pro > Add-ons e ligue o card Social Login; sem o Pro ativo o recurso não existe, pois é exclusivo da versão paga.

### O Social Login funciona na versão gratuita do Tutor LMS

Não. Segundo a documentação oficial da Themeum, o Social Login é um addon exclusivo do Tutor LMS Pro. Na versão gratuita o addon não fica disponível e os botões de entrada com Google, Facebook ou X não são exibidos na tela de login.

### O que significa o erro redirect_uri_mismatch no login social

Significa que a URL de redirecionamento cadastrada no console do provedor não bate exatamente com a do seu site. Confira o https, o www e a barra final e cole no provedor a URL de retorno exata mostrada pelo Tutor LMS, sem alterar nenhum caractere.

### Quais credenciais o Tutor LMS pede para cada provedor social

O Google exige o Client ID, o Facebook exige o App ID e o X (Twitter) exige API Key e API Secret Key. Cada valor vai no campo do provedor correspondente na aba Authentication, gerado no console de desenvolvedor de cada plataforma.

### Por que o login social só funciona para mim e não para os alunos

O app do provedor provavelmente está em modo de teste ou desenvolvimento, que só libera contas adicionadas manualmente. Mude o app do Facebook para Live e publique a tela de consentimento OAuth do Google para liberar usuários reais.

### Onde configuro as credenciais do Social Login no Tutor LMS

Em Tutor LMS Pro > Settings, na aba Authentication, dentro da seção Social Login. Ative o provedor desejado, cole a credencial correta e clique em Save Changes no topo da tela para aplicar.

### Outro plugin de login pode quebrar o Social Login do Tutor LMS

Sim. Se um plugin de membership ou page builder substitui o formulário de login do Tutor LMS, os botões sociais do addon podem não ser renderizados. Use a página de login padrão do Tutor LMS ou desative o plugin conflitante para testar.

**Fonte:** [Themeum — Tutor LMS Social Login addon (documentação oficial)](https://docs.themeum.com/tutor-lms/addons/social-login/)
