# Como corrigir e-mails de notificação que não chegam no Tutor LMS

No Tutor LMS, os e-mails automáticos como matrícula, boas-vindas e conclusão de curso não chegam aos alunos nem aos instrutores. A causa quase sempre está no addon Email Notifications desativado, nos gatilhos de e-mail desligados ou no wp_mail do WordPress sem SMTP autenticado caindo em spam.

## O que é Tutor LMS não envia email de notificação?

O Tutor LMS Pro envia avisos automáticos por e-mail através do addon Email Notifications, ativado em WP Admin -> Tutor LMS Pro -> Add-ons. Esse addon controla dezenas de gatilhos divididos em três grupos na tela WP Admin -> Tutor LMS Pro -> Settings -> Email: e-mails para alunos (Welcome Email After Registration, Course Enrolled, Completed a Course, Q&A response), para instrutores (Student Enrolled, New Order, Q&A message) e para administradores (signups, course submissions, new orders). Cada gatilho precisa estar marcado individualmente para disparar.

Quando uma notificação não chega, o problema mora em uma de duas camadas. A primeira é a configuração do Tutor LMS: o addon Email Notifications precisa estar ativo e o gatilho específico precisa estar ligado. A segunda é a infraestrutura de e-mail do WordPress: a função wp_mail usa o mail nativo do PHP por padrão e, sem um servidor SMTP autenticado, os provedores barram ou jogam a mensagem em spam. A documentação oficial é explícita ao dizer que o botão Send a Test Mail só funciona com SMTP configurado, o que confirma que a entrega depende dessa camada.

## Como identificar

- O aluno se matricula ou conclui um curso, mas nenhum e-mail de notificação chega à caixa de entrada nem à pasta de spam.
- O botão Send a Test Mail no Email Template Editor dispara sem erro, mas o e-mail de teste nunca aparece, indicando que o SMTP não está configurado.
- Nenhum gatilho funciona, nem Welcome Email After Registration nem Course Enrolled, apontando para o addon Email Notifications desativado em vez de um gatilho isolado.
- Só alguns avisos não chegam, como New Lessons ou New Quiz, enquanto outros chegam, o que aponta para a fila do WP Cron for Bulk Mailing presa.
- No log do plugin de SMTP ou Email Log o e-mail consta como enviado, mas não chega ao destinatário, indicando falha de entrega por reputação do remetente e não de disparo.

**Antes de começar:** Antes de editar o wp-config.php para desligar o WP-Cron, faça backup do arquivo. Um erro de digitação nele derruba o site inteiro, então mantenha uma cópia para restaurar via FTP caso o painel fique inacessível.

## Como prevenir

- Configure SMTP autenticado desde o lançamento do site, antes de publicar cursos, para que nenhum e-mail dependa do mail do PHP.
- Após cada atualização do Tutor LMS Pro, confirme que o addon Email Notifications e os gatilhos usados continuam ativos, pois atualizações grandes podem redefinir add-ons.
- Use um remetente do próprio domínio com registros SPF e DKIM publicados no DNS para proteger a reputação de envio.
- Cadastre um cron job real no servidor e desligue o WP-Cron interno em sites de baixo tráfego para que a fila de bulk mailing seja sempre processada.
- Inclua uma matrícula de teste no checklist de QA mensal, validando ponta a ponta a chegada das notificações por e-mail.

Erros relacionados

- [Como corrigir certificados que não chegam por e-mail no Tutor LMS](https://full.services/wp-fixer/corrigir-certificado-email-tutor-lms/)
- [Como corrigir e-mails do WordPress que não são enviados (SMTP)](https://full.services/wp-fixer/corrigir-wordpress-nao-envia-email/)
- [Como corrigir notificações de Q&A que não chegam aos instrutores no Tutor LMS](https://full.services/wp-fixer/corrigir-qa-notificacao-instrutor-tutor-lms/)

## Causa

- O addon Email Notifications está desativado em WP Admin -> Tutor LMS Pro -> Add-ons, então nenhum gatilho de e-mail automático é processado pelo plugin.
- Os gatilhos individuais em WP Admin -> Tutor LMS Pro -> Settings -> Email estão desmarcados, como Welcome Email After Registration ou Course Enrolled, então o evento ocorre mas não aciona envio.
- O WordPress está enviando pela função wp_mail com o mail nativo do PHP, sem um servidor SMTP autenticado, então o provedor do destinatário rejeita a mensagem ou marca como spam.
- A opção WP Cron for Bulk Mailing está ligada para avisos de New Lessons, New Quiz e New Assignment, mas o WP-Cron do site quase não roda por baixo tráfego, deixando esses e-mails presos na fila.
- O Default email sender em Sender Email Settings usa um domínio que não bate com o do site e sem registros SPF e DKIM, derrubando a reputação de envio e a entrega.
- Um plugin de segurança ou de cache intercepta ou bloqueia o wp_mail antes do envio, ou a porta SMTP saída está fechada pelo provedor de hospedagem.

## Como resolver

1. Ativar o addon Email Notifications: No painel, abra a tela de add-ons do Tutor LMS Pro e confirme que o addon de e-mail está ligado. Sem ele, nenhum gatilho de notificação é processado, então essa é a primeira verificação antes de qualquer ajuste de SMTP. O caminho de menu está no bloco de comandos abaixo.

```
WP Admin -> Tutor LMS Pro -> Add-ons -> ativar Email
```

2. Ligar os gatilhos de e-mail necessários: Vá às configurações de e-mail do Tutor LMS Pro e percorra as três listas de gatilhos para alunos, instrutores e administradores. Marque cada notificação que você espera enviar, salve e dispare um e-mail de teste pelo editor de template para confirmar o disparo antes de seguir.

```
WP Admin -> Tutor LMS Pro -> Settings -> Email
Email To Students -> habilitar Welcome Email After Registration e Course Enrolled
Email Template Editor -> Send a Test Mail
```

3. Configurar um servidor SMTP autenticado: A documentação oficial avisa que o teste de e-mail só funciona com SMTP configurado, e a maioria dos servidores compartilhados não entrega pelo mail do PHP. Instale um plugin de SMTP, conecte a uma conta de envio autenticada e refaça o teste. Isso resolve o caso mais comum, em que o Tutor LMS dispara mas o e-mail cai em spam ou é rejeitado.

```
WP Admin -> Plugins -> Adicionar novo -> instalar WP Mail SMTP ou FluentSMTP
Configurar host, porta, usuário e senha da conta de envio autenticada
Enviar e-mail de teste pelo próprio plugin de SMTP e confirmar a chegada
```

4. Ajustar o remetente e o WP Cron de bulk mailing: Defina o remetente padrão para um endereço do próprio domínio com SPF e DKIM válidos. Se você usa avisos de novas aulas e quizzes, a opção WP Cron for Bulk Mailing depende do agendador do WordPress, que mal roda em sites de baixo tráfego, então desligue o WP-Cron interno e agende um cron real no servidor.

```
WP Admin -> Tutor LMS Pro -> Settings -> Email -> Sender Email Settings
Default email sender -> usar um endereco do domínio do site
Adicionar no wp-config.php: define( 'DISABLE_WP_CRON', true );
No servidor, criar cron job: */1 * * * * wget -q -O - https://seudominio.com/wp-cron.php?doing_wp_cron
```

5. Validar o disparo com log de e-mail: Instale um plugin de Email Log e faça um teste ponta a ponta matriculando uma conta de aluno de teste. Se o gatilho aparecer no log mas o destinatário não receber, o problema é entrega e está no SMTP ou no remetente. Se o gatilho nem aparece no log, o problema é configuração do Tutor LMS dos passos anteriores.

```
WP Admin -> Plugins -> Adicionar novo -> instalar Email Log
Matricular uma conta de aluno de teste em um curso e checar o registro do gatilho
Conferir se o e-mail consta como enviado e se chegou na caixa de entrada
```


## Código

```php
// functions.php do tema filho ou plugin de snippets
// Diagnostico: registra cada chamada de wp_mail num log para provar se o Tutor LMS
// chega a disparar o e-mail (vs. falha de entrega no SMTP).
add_action( 'wp_mail_failed', function ( $wp_error ) {
    error_log( 'Tutor LMS wp_mail FALHOU: ' . $wp_error->get_error_message() );
} );

add_filter( 'wp_mail', function ( $args ) {
    error_log( 'Tutor LMS wp_mail DISPAROU -> para: ' . ( is_array( $args['to'] ) ? implode( ',', $args['to'] ) : $args['to'] ) . ' | assunto: ' . $args['subject'] );
    return $args;
} );
```

## Perguntas frequentes

### Por que nenhum e-mail do Tutor LMS chega aos alunos

Na maioria dos casos o addon Email Notifications está desativado em WP Admin -> Tutor LMS Pro -> Add-ons, então nenhum gatilho é processado. Se o addon está ativo e mesmo assim nada chega, o problema é a entrega: o WordPress envia pelo mail do PHP sem SMTP autenticado, e o provedor do aluno barra ou joga a mensagem em spam. Ative o addon primeiro e depois configure SMTP.

### Preciso do Tutor LMS Pro para receber as notificações por e-mail

Sim. O addon Email Notifications, que contém todos os gatilhos de e-mail para alunos, instrutores e administradores, faz parte do Tutor LMS Pro. Na versão gratuita não existe esse disparo automático configurável de notificações por e-mail, então é preciso a versão Pro com o addon ativo.

### O Send a Test Mail funciona, mas as notificações reais não chegam

Esse cenário aponta para gatilhos desmarcados. O teste valida o template e o transporte, mas cada notificação como Course Enrolled ou Completed a Course tem um interruptor próprio em WP Admin -> Tutor LMS Pro -> Settings -> Email. Confirme que o gatilho do evento que você espera está habilitado e salve a página.

### O e-mail consta como enviado no log mas o destinatário não recebe

Isso indica que o Tutor LMS disparou corretamente e a falha está na entrega. A causa típica é envio pelo mail do PHP sem SMTP, que acaba em spam ou é rejeitado por reputação. Configure um plugin de SMTP autenticado e use um remetente do próprio domínio com SPF e DKIM válidos para resolver.

### Só os avisos de novas aulas e quizzes não chegam, o resto chega

Esses avisos dependem da opção WP Cron for Bulk Mailing, que entrega em lote pelo agendador do WordPress. Em sites de baixo tráfego o WP-Cron interno quase não roda, então a fila fica presa. Desligue o WP-Cron interno no wp-config.php e agende um cron job real no servidor para rodar a cada minuto.

### O remetente padrão influencia na entrega das notificações

Influencia diretamente. Se o Default email sender em Sender Email Settings usar um domínio diferente do site ou sem registros SPF e DKIM, os provedores reduzem a reputação e jogam o e-mail em spam. Use sempre um endereço do próprio domínio com autenticação publicada no DNS.

### Um plugin de segurança pode estar bloqueando os e-mails do Tutor LMS

Pode. Plugins de segurança ou firewall às vezes interceptam o wp_mail, e alguns provedores fecham a porta de saída SMTP. Para isolar, desative temporariamente o plugin de segurança e refaça o teste de envio. Se o e-mail passar a chegar, configure a exceção no firewall ou use um relay SMTP em porta liberada.

**Fonte:** [Tutor LMS — Email Notifications Addon](https://docs.themeum.com/tutor-lms/addons/email-notifications/)
