Wordpress

Como enviar e-mails utilizando wp_mail() – WordPress

Enviando e-mails pelo , com cabeçalhos (headers) personalizados, utilizando a função wp_mail(). Função nativa do WordPress por onde todos os e-mails são enviados.

Conhecendo a função wp_mail

wp_mail( string|array $to, string $subject, string $message, string|array $headers = '', string|array $attachments = array() )

Parâmetros:

  • string|array $to: Array ou String com destinatários.
  • string $subject: Assunto.
  • string $message: Mensagem, Conteúdo do e-mail.
  • string|array $headers: Cabeçalhos do e-mail.
  • string|array $attachments = array(): Anexos

Enviando o e-mail

Exemplo de envio para múltiplos destinatários.

$to = array("teste01@test.com","teste02@test.com");

$subject = 'Assunto';
$message= 'conteúdo';
$header = array('Content-Type: text/html; charset=UTF-8');
 
$result = wp_mail( $to, $subject, $message, $header );

var-dump($result);

Na variável “header” você pode configurar os cabeçalhos adicionais do seu e-mail, tais como cópia (CC), cópia oculta (CCO), nome e e-mail do remetente (From / From name), entre outros.

Caso o e-mail seja enviado com sucesso, será retornado true ou false.

Headers customizados

Exemplo de “headers” customizado com múltiplas cópias.

$header[] = 'From: Teste <teste@teste.com.br>';
$header[] = 'Cc: Roger <teste@teste2.com.br>';
$header[] = 'Cc: teste@teste3.com.br';

Exemplo com Cópia oculta:

$header[] = 'Cco: teste@teste4.com.br';

Responder para “reply-to” personalizado:

$header = array(
  'Reply-To: Nome <test@test.com>',
);

Um pouco mais sobre a função

WordPress utiliza a classe PHPMailer para enviar e-mails, o qual utiliza a função nativa “mail()” do para realizar os envios.

O servidor de hospedagem deve estar devidamente configurado para que o envio pelo função mail() ocorra sem erro.

Você pode filtrar os erros gerados pelo PHPMailer utilizando o filtro wp_mail_failed.

Servidor de SMTP externo

Caso não seja possível enviar e-mails pelo o seu HOST e você tenha que configurar um , clique neste link: Configurando envio de e-mail por SMTP autenticado no WordPress para configurar um servidor SMTP externo no seu site WordPress.

Mais exemplos

$to = 'para@dominio.com.br';
$subject = 'Assunto de teste';
$body = 'conteúdo html <b>de</b> teste';
$headers = array('Content-Type: text/html; charset=UTF-8');
 
wp_mail( $to, $subject, $body, $headers );
// assumindo que as variaveis $to, $subject, $message foram definidas anteriormente...
 
$headers[] = 'From: Roger <contato@rogertakemiya.com.br>';
$headers[] = 'Cc: Roger 2 <contato1@rogertakemiya.com.br>';
$headers[] = 'Cc: contato2@rogertakemiya.com.br'; 
 
wp_mail( $to, $subject, $message, $headers );

 

Resumo
Nome do Artigo
Enviando e-mails utilizando função wp_mail no Wordpress
Descrição
Tutorial com códigos de exemplo ensinando a enviar e-mails pelo Wordpress utilizando a função wp_mail, com cópia, cópia oculta, responder para, etc
Autor
Editor
Roger Mauricio Takemiya
Logo do Editor

Post Recentes

Por que devo sempre manter o Magento 2 atualizado?

Segurança: Atualizações frequentes geralmente incluem patches de segurança para corrigir vulnerabilidades identificadas. Ao manter o Magento atualizado, você reduz significativamente…

1 mês atrás

Adicionar uma mensagem de Alerta ou Aviso do Admin do Magento 2

Como adicionar uma mensagem de Alerta ou Aviso do Admin do Magento 2 Injete o Magento\Framework\Message\ManagerInterface no construtor da sua…

1 mês atrás

Exibir mensagens erro/sucesso da Classe: Magento\Framework\Message\ManagerInterface

Para exibir as mensagens adicionadas na classe Magento\Framework\Message\ManagerInterface em um arquivo .phtml, você pode usar o seguinte código: <?php $objectManager…

1 mês atrás

Exportar as categorias do Magento 2 em um XML

Para criar um script no Magento 2 que exporte as categorias para um arquivo XML com o nome da categoria,…

2 meses atrás

Colocar um video como Background utilizando HTML + CSS

Para definir um vídeo MP4 como plano de fundo em um <div> usando HTML e CSS, você pode seguir estas…

4 meses atrás

Desativar o “lastname” no Magento 2

Como desativar o "lastname" no Magento 2 e Adobe Commerce Desativando a obrigatoriedade do campo Execute a SQL abaixo diretamente…

4 meses atrás