Cómo añadir saltos de línea a $email['body'] usando el hook auto_core_update_email
Estoy usando el hook auto_core_update_email para modificar el correo de actualización automática enviado por WordPress. Sin embargo, no puedo encontrar la manera de añadir saltos de línea al cuerpo del correo. Aquí está mi código:
function example_filter_auto_update_email($email) {
$email['to'] = array('example@example.com', 'test@example.com');
$email['subject'] = 'Actualización Automática';
$email['body'] = 'Hola,%0D%0A'
. 'Lorem ipsum.%0D%0A'
. 'Muchas gracias,%0D%0A'
. 'WordPress';
return $email;
}
add_filter('auto_core_update_email', 'example_filter_auto_update_email', 1);
También he intentado usar:
<br />
, \r\n
, así como %0D%0A
, como se ve arriba. Sin embargo, en cada caso el texto aparece en mi cliente de correo de esta manera:
Hola%0D%0ALorem Ipsum%0D%0AMuchas gracias%0D%0AWordPress
¿Cómo puedo conseguir que se muestren los saltos de línea en mis correos de actualización automática? Si ayuda, los correos se envían por SMTP.
¡Muchas gracias!

No utilices comillas simples con secuencias de escape como \r
, \n
y similares. Usa comillas dobles:
$a = 'Hello, ' . "\n";
$b = "Good Bye, \n";
Consulta Cadenas entre comillas dobles en PHP.

ten en cuenta que PHP_EOL
!== "\n"
dependiendo de la plataforma desde la que se envía el correo y en la que se está leyendo. Lo más probable es que no tenga impacto en software de correo moderno, pero vale la pena tenerlo presente.
