Como corrigir o Elementor Pro Form que não envia e-mails
O que é Elementor Form que não envia email?
O Elementor Form que não envia email é a situação em que um visitante envia o formulário, vê a mensagem de sucesso na tela, mas a notificação nunca chega na caixa de entrada do administrador. O Elementor não tem servidor de e-mail próprio na versão padrão: ele entrega a mensagem para a função mail() nativa do WordPress (wp_mail), que por padrão usa a função mail() do PHP do servidor. Em hospedagem compartilhada, esse envio sem autenticação é frequentemente recusado pelo provedor de destino ou marcado como spam, então o formulário parece funcionar mas o e-mail se perde no caminho.
Como identificar
- O formulário mostra a mensagem de sucesso ‘Your submission was successful’ (ou a mensagem personalizada) mas nenhum e-mail chega ao destinatário.
- O e-mail às vezes chega para um provedor e nunca para outro, ou cai sempre na pasta de spam ou lixo eletrônico do Gmail/Outlook.
- No painel, em Elementor -> Submissions, a entrada do formulário aparece registrada, provando que o envio do form funcionou e que o problema é só na entrega do e-mail.
- Um plugin de log de e-mail (como WP Mail Logging) registra a mensagem como enviada, mas o servidor de destino nunca a recebe ou devolve bounce.
Como prevenir
- Mantenha um plugin SMTP autenticado configurado em todo site que dependa de formulários, para nunca cair na função mail() do PHP.
- Use sempre um endereço do próprio domínio no campo From Email e configure os registros SPF e DKIM do domínio no provedor de DNS.
- Após qualquer mudança no formulário, faça um envio de teste real e confirme a chegada na caixa de entrada antes de publicar.
- Ative o log de e-mail (WP Mail Logging) para detectar falhas de entrega antes que um lead seja perdido.
Causa
- A ação Email não foi adicionada em Actions After Submit nas configurações do formulário, então o Elementor grava a entrada em Submissions mas nunca dispara notificação por e-mail.
- Não há plugin SMTP instalado: o WordPress cai na função mail() do PHP, sem autenticação, e provedores como Gmail e Outlook recusam ou marcam a mensagem como spam por falta de SPF e DKIM.
- O campo From Email da ação Email usa um endereço de domínio diferente do site (por exemplo um Gmail pessoal), o que falha na verificação de SPF/DKIM do domínio remetente e derruba a entrega.
- A hospedagem compartilhada bloqueia a porta 25 ou desativa a função mail() do PHP, então o WordPress nem consegue entregar a mensagem ao servidor de saída.
- Um plugin de segurança ou antispam (como reCAPTCHA mal configurado no formulário) interrompe a ação de envio antes de a notificação ser disparada.
Como resolver
- Confirme que a ação Email existe no formulário: Edite a página com o Elementor, selecione o widget de formulário e abra a aba de conteúdo. Na seção de ações após o envio, verifique se a ação de e-mail está na lista. Sem ela, nenhuma notificação é disparada.
Elementor -> editar widget Form -> Content -> Actions After Submit -> adicionar Email - Ajuste o remetente para o domínio do site: Abra as configurações da ação de e-mail e use no campo de remetente um endereço do mesmo domínio do site. O destinatário pode ser qualquer caixa, mas o remetente precisa bater com o domínio para passar na verificação de SPF e DKIM.
From Email: [email protected] To: [email protected] Reply-To: [field id="email"] - Instale e configure um plugin SMTP: Instale um plugin de SMTP (como WP Mail SMTP ou FluentSMTP) e conecte-o a um serviço de envio autenticado. Isso faz o WordPress entregar via SMTP autenticado em vez da função mail() do PHP, o que resolve a maioria dos casos.
Plugins -> Adicionar novo -> WP Mail SMTP -> Instalar -> Ativar WP Mail SMTP -> Settings -> Mailer -> escolher provedor (SendLayer, Brevo, SMTP host) From Email: [email protected] - Envie um e-mail de teste e valide a entrega: Use a ferramenta de teste do plugin SMTP para disparar uma mensagem e confirmar que ela chega. Se chegar no teste mas não pelo formulário, repita o envio do form e confira a pasta de spam do destinatário.
WP Mail SMTP -> Tools -> Email Test -> enviar para a caixa do administrador
<?php
// Força o remetente do WordPress para o domínio do site (functions.php do tema filho).
// Garante que TODO e-mail (inclusive o do Elementor Form) saia com From do domínio,
// o que melhora a entrega quando combinado com SMTP autenticado.
add_filter( 'wp_mail_from', function ( $email ) {
return '[email protected]';
} );
add_filter( 'wp_mail_from_name', function ( $name ) {
return 'Seu Site';
} );














