Y at-il un action_hook ou quelque chose de similaire qui pourrait m'aider à atteindre cet objectif?
J'ai essayé d'ajouter du balisage dans une variable chaîne PHP et je viens de lancer un email avec la fonction wp_mail comme ceci:
$email_to = '[email protected]';
$email_subject = 'Email subject';
$email_body = "<html><body><h1>Hello World!</h1></body></html>";
$send_mail = wp_mail($email_to, $email_subject, $email_body);
Mais il est apparu en texte clair?
Des idées?
à partir de wp_mail page codex :
Le type de contenu par défaut est 'text/plain', ce qui n'autorise pas l'utilisation de HTML. Toutefois, vous pouvez définir le type de contenu de l'e-mail à l'aide du filtre "wp_mail_content_type".
// In theme's functions.php or plug-in code:
function wpse27856_set_content_type(){
return "text/html";
}
add_filter( 'wp_mail_content_type','wpse27856_set_content_type' );
Vous pouvez également spécifier l'en-tête HTTP Content-Type dans le paramètre $ headers:
$to = '[email protected]';
$subject = 'The subject';
$body = 'The email body content';
$headers = array('Content-Type: text/html; charset=UTF-8');
wp_mail( $to, $subject, $body, $headers );
N'oubliez pas de supprimer le filtre de type de contenu après avoir utilisé la fonction wp_mail. Après avoir nommé la réponse, vous devriez le faire après l'exécution de wp_mail:
remove_filter( 'wp_mail_content_type','wpse27856_set_content_type' );
Vérifiez ce billet ici - Réinitialisez le type de contenu pour éviter les conflits - http://core.trac.wordpress.org/ticket/23578