Declarando tipo mime para html-mail
-
13-09-2019 - |
Pergunta
Eu quero criar um e-mail html e eu tenho lido muito sobre como fazê-lo. Há um pedaço de informação que não consigo encontrar. Como devo declarar o tipo mime? Eu tentei com:
meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
mas ele não funciona.
editar Depois:
Estou tentando definir o tipo de conteúdo do e-mail para text/html
mas eu não sei como. Tudo isso ao escrever a partir de um cliente de e-mail regular. Tenho que declará-la no corpo da mensagem? Ou no cabeçalho da mensagem (em caso afirmativo, como faço o que?)?
Solução
Você está tentando definir a declaração do tipo de conteúdo dentro do cabeçalho da mensagem enviada ao servidor de correio? Se assim for, você deve defini-lo desta forma, em uma linha própria:
Content-Type: text/html; charset=UTF-8
Outras dicas
Basicamente enviar e-mail clientes ignorar quaisquer meta tags com tipo de conteúdo em si (pelo menos a partir de 2013/10/17).
Você precisa definir uma declaração do tipo de conteúdo em um cabeçalho especial no servidor de e-mail.
Mais informação sobre este assunto podem ser encontradas em http: //www.emailonacid .com / blog / details / C13 / the_importance_of_content-type_character_encoding_in_html_emails
Se isto não faz sentido para você, então eu tenho medo que você está sem sorte. A única solução confiável que eu encontrei é para converter caracteres especiais para a sua entidade HTML equivalente. O link acima tem um link para uma ferramenta que faz isso para você.
Espero que ajude!
A marca de fim de tag meta é usada apenas em xhtml/xml
. Se você estiver usando html, você deve usá-lo dentro de tags <head>
como:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
Isto aplica-se ao PHP:
// To send HTML mail, the Content-type header must be set
$headers[] = 'MIME-Version: 1.0';
$headers[] = 'Content-type: text/html; charset=iso-8859-1';
// Additional headers
$headers[] = 'To: Mary <mary@example.com>, Kelly <kelly@example.com>';
$headers[] = 'From: Birthday Reminder <birthday@example.com>';
$headers[] = 'Cc: birthdayarchive@example.com';
$headers[] = 'Bcc: birthdaycheck@example.com';
// Mail it
mail($to, $subject, $message, implode("\r\n", $headers));