El correo electrónico enviado desde WordPress tiene etiquetas html

3

En lugar de:

Hello,

Thank you dfasdfasdfasdf asdf asdf asdfas dfs

Please, feelasdf asdf asdf 

Estoy recibiendo algo como esto en el correo electrónico que llega a mi buzón:

<p>Hello,</p> 
<p>&nbsp;</p> 
<p>Thank you dfasdfasdfasdf asdf asdf asdfas dfs</p> 
<p>&nbsp;</p> 
<p>Please, feel asdfads fad f</p> 

Entonces, ¿supongo que el HTML no está activado para la función wp_mail ()? ¿Cómo activarlo para que el correo llegue como debe y las etiquetas <p> y <br> se interpreten correctamente?

Estoy usando esto para enviar mi correo desde functions.php cuando se presiona el botón de envío:

   $headers = 'From: XXXXXX.com <[email protected]>' . "\r\n";
   $subject = 'Registration from xxxxx.com' . "\r\n"; 
   $message = $result_email_text;
   wp_mail($_POST['admin_email'], $subject, $message, $headers );
    
pregunta Derfder 10.10.2013 - 10:26

1 respuesta

10

El tipo de contenido predeterminado es 'text/plain' , que no permite el uso de HTML. Puede configurar el tipo de contenido del correo electrónico incluyendo un encabezado como "Content-type: text / html"

$headers = 'Content-type: text/html;charset=utf-8' . "\r\n";
$headers .= 'From: XXXXXX.com <[email protected]>' . "\r\n";
   $subject = 'Registration from xxxxx.com' . "\r\n"; 
   $message = $result_email_text;
   wp_mail($_POST['admin_email'], $subject, $message, $headers );

o Puede configurarlo utilizando el filtro 'wp_mail_content_type'

remove_filter( 'wp_mail_content_type', 'set_html_content_type' );
add_filter( 'wp_mail_content_type', 'set_html_content_type' );
function set_html_content_type() {

    return 'text/html';
}

para más detalles vea el siguiente enlace enlace

    
respondido por el dipali 10.10.2013 - 12:00

Lea otras preguntas en las etiquetas