Pular para o conteúdo
Docs

Tutorial

Enviar os e-mails do WordPress com o Emailit

Envie os e-mails do WordPress, do WooCommerce e dos formulários de contato pelo SMTP do Emailit com o WP Mail SMTP ou com um pequeno plugin, usando uma chave de API como senha.

Atualizado em 1 de out. de 2026

O WordPress envia redefinições de senha, pedidos do WooCommerce e mensagens de formulários de contato com wp_mail(), que por padrão usa a configuração de e-mail do servidor e muitas vezes cai no spam. Este guia envia esses e-mails pelo SMTP relay do Emailit, com o plugin WP Mail SMTP ou com algumas linhas de código.

Pré-requisitos

  • Acesso de administrador ao seu site WordPress.
  • Um domínio de envio verificado, por exemplo, acme.com. O endereço From do seu site deve usá-lo.
  • Uma chave de API. Crie uma chave Sending Only restrita ao seu domínio, com um nome como wordpress-acme, para que uma configuração de plugin vazada não possa ser usada para mais nada.
  • Até o seu workspace ter acesso de produção, você só pode enviar para os e-mails das contas dos membros do workspace. Teste com o seu próprio endereço.

Configurações de SMTP

Estes são os valores que você vai informar em qualquer plugin de SMTP:

Configuração Valor
Host SMTP smtp.emailit.com
Criptografia TLS (STARTTLS)
Porta SMTP 587
Autenticação Ativada
Usuário SMTP emailit
Senha SMTP A sua chave de API (secret_…)
E-mail do remetente (From) Um endereço no seu domínio verificado, por exemplo, hello@acme.com

Se o seu host bloquear a porta 587, use 2525 ou 2587 com TLS, ou 465 com SSL. Consulte Configurações de SMTP.

Configurar o WP Mail SMTP

O WP Mail SMTP é um plugin gratuito que substitui o transporte de e-mail do WordPress. Outros plugins de SMTP, como o FluentSMTP ou o Post SMTP, usam as mesmas configurações com rótulos um pouco diferentes.

  1. Instale o plugin. No WordPress, acesse Plugins > Add New, pesquise WP Mail SMTP e depois instale e ative o plugin. Se o assistente de configuração abrir, pule-o; você pode configurar tudo na página de configurações.

  2. Defina o remetente. Abra as configurações do plugin. Em From Email, informe um endereço no seu domínio verificado e ative Force From Email, para que todos os plugins enviem desse endereço. Em From Name, informe o nome do seu site ou da sua empresa.

  3. Escolha Other SMTP. Em Mailer, escolha Other SMTP.

  4. Informe o servidor. Defina SMTP Host como smtp.emailit.com, Encryption como TLS e SMTP Port como 587. Deixe Auto TLS ativado.

  5. Informe as credenciais. Ative Authentication. Defina SMTP Username como emailit e SMTP Password como a sua chave de API. Salve as configurações.

  6. Envie um teste. Use a ferramenta Email Test do plugin para enviar uma mensagem para o seu próprio endereço. Ela aparece em Email APIEmails em poucos segundos.

Manter a chave fora do banco de dados

O WP Mail SMTP pode ler as configurações dele a partir de constantes, para que a chave de API fique no wp-config.php em vez de no banco de dados. Adicione estas linhas acima de /* That's all, stop editing! */:

wp-config.php
define( 'WPMS_ON', true );
define( 'WPMS_MAILER', 'smtp' );
define( 'WPMS_SMTP_HOST', 'smtp.emailit.com' );
define( 'WPMS_SMTP_PORT', 587 );
define( 'WPMS_SSL', 'tls' );
define( 'WPMS_SMTP_AUTH', true );
define( 'WPMS_SMTP_AUTOTLS', true );
define( 'WPMS_SMTP_USER', 'emailit' );
define( 'WPMS_SMTP_PASS', 'secret_••••••••••••••••••••••••••••••••' );
define( 'WPMS_MAIL_FROM', 'hello@acme.com' );
define( 'WPMS_MAIL_FROM_FORCE', true );
define( 'WPMS_MAIL_FROM_NAME', 'Acme' );

A página de configurações passa a mostrar esses valores como bloqueados. Consulte a documentação do plugin se um campo não pegar a constante dele.

Configurar sem plugin

Se você preferir não instalar um plugin, adicione um must-use plugin que configure o PHPMailer nativo do WordPress. Defina a chave no wp-config.php:

wp-config.php
define( 'EMAILIT_API_KEY', 'secret_••••••••••••••••••••••••••••••••' );

Depois, crie este arquivo:

wp-content/mu-plugins/emailit-smtp.php
<?php
/**
 * Plugin Name: Emailit SMTP
 * Description: Sends all WordPress email through the Emailit SMTP relay.
 */

add_action( 'phpmailer_init', function ( $phpmailer ) {
    $phpmailer->isSMTP();
    $phpmailer->Host       = 'smtp.emailit.com';
    $phpmailer->Port       = 587;
    $phpmailer->SMTPSecure = 'tls';
    $phpmailer->SMTPAuth   = true;
    $phpmailer->Username   = 'emailit';
    $phpmailer->Password   = EMAILIT_API_KEY;
} );

add_filter( 'wp_mail_from', fn () => 'hello@acme.com' );
add_filter( 'wp_mail_from_name', fn () => 'Acme' );

Os arquivos em mu-plugins são carregados automaticamente e não podem ser desativados na tela de administração.

Receber webhooks

A maioria dos sites não precisa de webhooks. Se você quiser reagir a bounces ou reclamações, por exemplo, para marcar o endereço de um cliente do WooCommerce, registre uma rota REST e verifique a assinatura. Guarde o segredo de assinatura do webhook no wp-config.php como EMAILIT_WEBHOOK_SECRET:

wp-content/mu-plugins/emailit-webhooks.php
<?php
add_action( 'rest_api_init', function () {
    register_rest_route( 'emailit/v1', '/webhook', [
        'methods'             => 'POST',
        'permission_callback' => '__return_true',
        'callback'            => function ( WP_REST_Request $request ) {
            $payload   = $request->get_body();
            $timestamp = (string) $request->get_header( 'x-emailit-timestamp' );
            $signature = (string) $request->get_header( 'x-emailit-signature' );
            $expected  = hash_hmac( 'sha256', $timestamp . '.' . $payload, EMAILIT_WEBHOOK_SECRET );

            if ( abs( time() - (int) $timestamp ) > 300 || ! hash_equals( $expected, $signature ) ) {
                return new WP_Error( 'invalid_signature', 'Invalid signature', [ 'status' => 401 ] );
            }

            foreach ( json_decode( $payload, true ) as $event ) {
                if ( 'email.bounced' === $event['type'] ) {
                    // Flag $event['data']['object']['to'].
                }
            }

            return new WP_REST_Response( null, 200 );
        },
    ] );
} );

Aponte o webhook para https://acme.com/wp-json/emailit/v1/webhook. A verificação da assinatura é o que protege a rota, então não a remova.

Dicas para produção

  • Force o endereço From. O WooCommerce e os plugins de formulários de contato e de áreas de membros costumam definir o próprio remetente. Forçar um endereço From no seu domínio verificado evita os erros 530 From/Sender domain is not verified.
  • Confira os logs quando algo falhar. Email APILogs mostra cada login SMTP e cada mensagem com o código de status, filtrados por chave de API.
  • Fique de olho nos seus limites. Por padrão, os workspaces novos podem enviar 2 e-mails por segundo e 5.000 por dia. Uma grande promoção no WooCommerce ou um plugin de newsletter pode atingir esse limite; consulte Limites para pedir mais.
  • Não envie newsletters pelo wp_mail. Para e-mails de marketing para uma lista, use Campanhas, que cuidam dos links de descadastro e das listas de contatos para você.

Solução de problemas

Sintoma Causa Solução
535 Authentication failed A senha não é uma chave de API válida. Cole a chave completa, incluindo secret_, e use emailit como usuário.
530 From/Sender domain is not verified for this workspace O endereço From não está em um domínio verificado. Defina e force um e-mail de remetente no seu domínio verificado.
530 API key is restricted to sending domain A chave está restrita a outro domínio. Use um endereço From no domínio da chave ou outra chave.
A conexão dá timeout O seu host bloqueia a porta. Tente a porta 2525 ou 2587 com TLS ou peça ao seu host para liberar o SMTP de saída.
550 Unverified workspaces can only send to workspace members' account emails O workspace ainda não tem acesso de produção. Solicite o acesso de produção.

Para mais informações, consulte Solução de problemas de SMTP.

Próximos passos

Portas, TLS e credenciais.
Mantenha os seus e-mails fora do spam.
O que significa cada status da lista de e-mails.
Escopos, restrições de domínio e rotação.

Esta página foi útil?

Obrigado pelo feedback.

Obrigado, lemos todas as mensagens.