Ir diretamente para o conteúdo

Definições de cookies

Escolha que tipos de cookies permite. Pode alterar a sua escolha a qualquer momento em Definições de cookies, no fundo de cada página. Política de privacidade

Necessários

Sempre ativos

Necessários para iniciar sessão, manter o seu carrinho e memorizar as suas escolhas. Estão sempre ativos.

Que cookies?
  • weboke_sessie, weboke_klant, weboke_remember: a sua sessão e manter a sessão iniciada
  • weboke_basket: o seu carrinho
  • wkBtwIncl: mostrar preços com ou sem IVA
  • wok_cookies: a sua escolha de cookies, 12 meses

Mede que anúncio leva a uma visita ou encomenda, para não pagarmos por anúncios que não dão resultado.

Que cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), até 90 dias
  • OpenAI Ads, anúncios no ChatGPT
  • wok_aff: através de que parceiro chegou até nós (programa de afiliados), 60 dias

4,6

País e idioma

Cada país tem o seu próprio site, com os preços e o IVA desse país.

Ver

E-mail a partir do WordPress

Módulo 9: E-mail, visibilidade nos motores de pesquisa, RGPD, manutenção e migração · Tempo de leitura: 9 minutos

Objetivo de aprendizagem: Após esta lição, saberá garantir que os e-mails enviados pelo WordPress (formulários, encomendas, links de palavra-passe) chegam de forma fiável.

Conceitos-chave: wp_mail, PHP mail(), remetente (From), Reply-To, SMTP, plugin SMTP, caixa de correio autenticada, serviço de e-mail transacional, SPF, DKIM, DMARC, alinhamento, MX noutro local, e-mail de teste

O WordPress envia mais e-mails do que pensa

A sua site envia e-mails quando: um formulário de contacto é preenchido, há uma encomenda (ao cliente e a si), um novo utilizador se regista, alguém esquece a palavra-passe, há um novo comentário, ocorre uma atualização automática, ou há um erro crítico (lição 5.4). Se esse e-mail não chegar, muitas vezes só se apercebe disso quando um cliente liga: "já preenchi o formulário três vezes."

Como o WordPress envia e-mails por predefinição

O WordPress envia tudo através da função wp_mail. Por predefinição, esta entrega o e-mail à função PHP mail(), que o passa ao programa de e-mail do servidor web. Isto funciona, mas tem três pontos fracos:

  1. O remetente. Sem configuração, o WordPress envia como wordpress@example.com. Se esse endereço não existir, ou se o remetente for diferente do seu próprio domínio, os destinatários desconfiam.
  2. SPF, DKIM e DMARC. Os servidores de e-mail recetores verificam se o servidor que entrega o e-mail tem autorização para enviar em nome do seu domínio (SPF), se o e-mail tem uma assinatura digital válida do seu domínio (DKIM) e qual é a política do seu domínio caso algo não esteja correto (DMARC). No curso de DNS (lições 4.3 a 4.5) pode ler como isto funciona. O envio através do servidor web só passa nestas verificações se o DNS e o servidor estiverem configurados para isso.
  3. E-mail noutro local. Se o seu e-mail não estiver alojado no seu fornecedor de alojamento web, mas sim, por exemplo, no Microsoft 365 ou no Google Workspace (os seus registos MX apontam para lá), o envio através do servidor web frequentemente não corresponde ao seu SPF e DKIM. Além disso, alguns servidores web tentam entregar localmente o e-mail destinado ao seu próprio domínio, em vez de o encaminhar através do MX, pelo que nunca chega à sua caixa de correio real.

Configurar corretamente o remetente e o Reply-To

Um erro comum em formulários de contacto: utilizar como remetente (From) o endereço do visitante. Isto parece lógico ("assim posso responder diretamente"), mas o seu servidor não tem autorização para enviar e-mails em nome de @gmail.com ou @hotmail.com. Esses domínios têm uma política DMARC rigorosa, pelo que o destinatário recusa o e-mail ou coloca-o na pasta de spam.

O correto é:

From:     Website <website@example.com>      (um endereço do seu próprio domínio)
Reply-To: bezoeker@example.net               (o endereço que o visitante indicou)
To:       info@example.com

Com o Reply-To, a sua resposta chega ao visitante na mesma. Praticamente todos os plugins de formulários têm estes dois campos separados.

SMTP: enviar através de uma caixa de correio real

A solução mais fiável é fazer com que o WordPress envie e-mails através de SMTP: a mesma forma como o seu programa de e-mail envia mensagens, com um nome de utilizador e palavra-passe de uma caixa de correio real. Isto faz-se com um plugin SMTP (por exemplo, WP Mail SMTP, FluentSMTP ou Post SMTP; há mais opções). O plugin intercepta o wp_mail e envia o e-mail através do servidor que indicar:

OpçãoPara quem
A caixa de correio do seu próprio fornecedor de alojamento (por exemplo, website@example.com no servidor de e-mail do seu pacote de alojamento)A maioria das sites pequenas com e-mail na mesma entidade
O seu e-mail no Microsoft 365 ou Google WorkspaceSe o seu e-mail estiver aí alojado; frequentemente através de uma ligação especial no plugin (OAuth) em vez de uma palavra-passe, uma vez que esses serviços estão cada vez mais a restringir a autenticação SMTP tradicional
Um serviço de e-mail transacional (um serviço especializado no envio de e-mails a partir de sites e aplicações)Lojas online e sites que enviam muitos e-mails

Vantagens: o e-mail passa por um servidor já configurado com SPF e DKIM para o seu domínio, o remetente é um endereço existente e muitos plugins mantêm um registo, para que possa ver o que foi enviado e o que falhou.

Tenha em atenção alguns aspetos:

  • Utilize um endereço de e-mail separado para a site (por exemplo, website@), e não a sua caixa de correio pessoal. Se a site for atacada e a palavra-passe for exposta, esse endereço pode ser substituído sem danos.
  • A palavra-passe SMTP fica guardada na base de dados ou no wp-config.php. Utilize, sempre que possível, uma palavra-passe de aplicação ou uma ligação sem palavra-passe.
  • Um registo de e-mail contém dados pessoais (quem enviou o quê). Não o deixe crescer indefinidamente (lição 9.3).

SPF, DKIM e DMARC para a sua site

Seja qual for o servidor que utilizar, o seu DNS tem de estar em conformidade:

  • SPF: o registo SPF do seu domínio tem de mencionar o servidor que entrega o e-mail. Se enviar através do servidor de e-mail do seu fornecedor de alojamento, este normalmente já lá está. Se enviar através de um serviço transacional, acrescente o respetivo include:, no mesmo registo SPF (nunca um segundo registo SPF, curso de DNS, lição 4.3).
  • DKIM: o servidor de envio tem de assinar o e-mail com uma chave que conste no seu DNS (<selector>._domainkey.example.com). Ativa-se isto no seu fornecedor de alojamento e nos serviços transacionais; o serviço fornece-lhe os registos.
  • DMARC: um registo em _dmarc.example.com. Comece com p=none e torne a política mais rigorosa quando tudo estiver correto (curso de DNS, lição 4.5).

Para o DMARC, o domínio no From tem de estar alinhado com o domínio que passa no SPF ou no DKIM. É por isso que ter o "From no seu próprio domínio" é tão importante.

Testar

  1. Muitos plugins SMTP têm um botão Enviar e-mail de teste. Envie um e-mail para um endereço de outra entidade (um endereço Gmail ou Outlook.com) e verifique se chega à caixa de entrada.
  2. Veja os cabeçalhos desse e-mail ("Mostrar original" ou "Ver origem"). Procure spf=pass, dkim=pass e dmarc=pass.
  3. Preencha o seu próprio formulário de contacto e verifique se o e-mail chega, com o Reply-To correto.
  4. Teste também um link de palavra-passe e, no caso de uma loja, uma encomenda de teste.

Ferramentas online como o mail-tester.com dão uma pontuação e explicações; com a verificação de e-mail do seu fornecedor de alojamento (na WebOké chama-se assim) ou com o internet.nl, pode verificar a parte do DNS.

Na prática: o aspeto num painel

Como exemplo, utilizamos o DirectAdmin e um plugin SMTP. Noutros fornecedores de alojamento e plugins, os campos têm nomes semelhantes.

  1. Crie no DirectAdmin, em Contas de E-Mail, uma caixa de correio website@example.com com uma palavra-passe forte.
  2. Procure, junto do seu fornecedor de alojamento, as definições para o envio de e-mail (nome do servidor, porta 465 ou 587, encriptação).
  3. Introduza esses dados no plugin SMTP, com website@example.com como remetente. Ative a opção "forçar remetente", para que também outros plugins utilizem este endereço.
  4. Verifique, na gestão do DNS, que o SPF, DKIM e DMARC existem para o seu domínio.
  5. Envie um e-mail de teste e leia os cabeçalhos.

Resumo

  • O WordPress envia através do wp_mail e, por predefinição, através do PHP mail(); o remetente e o DNS determinam se o e-mail chega.
  • Defina o remetente (From) para um endereço do seu próprio domínio e coloque o endereço do visitante no Reply-To.
  • Um plugin SMTP com uma caixa de correio separada ou um serviço transacional é o mais fiável, com registo incluído.
  • O SPF tem de mencionar o servidor de envio (num único registo), o DKIM tem de estar ativo, o DMARC deve começar com p=none.
  • Teste com um endereço de outra entidade e leia o spf, o dkim e o dmarc nos cabeçalhos.

Questionário

1. O seu formulário de contacto utiliza o endereço do visitante como remetente. O e-mail de utilizadores do Gmail não chega. Porquê?



2. O seu e-mail está no Microsoft 365, o seu site está num fornecedor de alojamento web. O e-mail enviado pelo WordPress chega mal. Qual é a melhor solução?



3. Onde é que verifica, num e-mail de teste recebido, se o SPF, o DKIM e o DMARC estão corretos?



4. Porque utiliza, para a site, um endereço de e-mail separado como website@ em vez da sua própria caixa de correio?



Exercício

Exercício A9.1: O seu domínio está pronto para enviar e-mails a partir da sua site? Indique o seu domínio, o endereço que a sua site utiliza como remetente e o servidor através do qual a sua site envia e-mails (o nome do servidor SMTP, ou "servidor web" se não tiver configurado nada). Indique também o seletor DKIM, se o souber. O programa verifica: se o endereço de remetente pertence ao seu domínio, se existe exatamente um registo SPF e se este autoriza o servidor indicado, se existe um registo DKIM junto ao seletor (ou informa que, sem seletor, não é possível verificar), e se existe um registo DMARC válido.

Exercício A9.1: O seu domínio está pronto para enviar e-mails a partir da sua site?





O que preenche e o que encontramos não ficam guardados. O seu navegador memoriza as suas respostas e se concluiu o exercício com sucesso. Se tiver sessão iniciada, guardamos apenas que concluiu o exercício (quase) com sucesso em Os meus cursos; aí também o pode eliminar.

Exercício D9.1: Ler um e-mail de teste. Envie um e-mail de teste a partir da sua site (o botão de teste do seu plugin SMTP, ou um link de palavra-passe para uma conta de teste) para um endereço de outra entidade. Abra os cabeçalhos desse e-mail e anote os resultados em spf, dkim e dmarc, e qual o domínio indicado em cada um. Depois, preencha o seu próprio formulário de contacto e verifique: o e-mail chega, e a opção "responder" é direcionada para o endereço que indicou no formulário?

Exercício D9.1: Ler um e-mail de teste

Este exercício faz você mesmo; ninguém o verifica. Assinale o que já fez e marque o exercício como concluído.




As suas marcações e notas ficam apenas neste navegador; não as enviamos para lado nenhum. Se tiver sessão iniciada, guardamos em Os meus cursos apenas que concluiu o exercício.

Leitura adicional

Estes artigos descrevem os passos nos painéis da WebOké; noutros painéis funcionam de forma semelhante.

Um momento…

Configurar os seus domínios

Para cada domínio, defina os servidores de nomes, a ligação ao seu alojamento e quem fica como titular.

A carregar os seus domínios…