it-swarm.com.de

Von WordPress gesendete E-Mails haben HTML-Tags

Anstatt:

Hello,

Thank you dfasdfasdfasdf asdf asdf asdfas dfs

Please, feelasdf asdf asdf 

Die E-Mail, die in meiner Mailbox eingeht, sieht folgendermaßen aus:

<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> 

Also, ich denke, das HTML ist für die Funktion wp_mail() nicht aktiviert? Wie schalten Sie es ein, damit die E-Mail wie gewünscht ankommt und die Tags <p> und <br> richtig interpretiert werden?

Ich verwende dies, um meine E-Mails von functions.php zu senden, wenn der Senden-Button gedrückt wird:

   $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 );
3
Derfder

Der Standardinhaltstyp ist 'text/plain', der die Verwendung von HTML nicht zulässt. Sie können den Inhaltstyp der E-Mail festlegen, indem Sie einen Header wie "Inhaltstyp: Text/HTML" einfügen.

$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 );

Oder Sie können es mithilfe des Filters wp_mail_content_type einstellen

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';
}

Weitere Informationen finden Sie unter folgendem Link: http://codex.wordpress.org/Function_Reference/wp_mail

10
dipali