从技术上来说,这并不能回答这个问题,但更多的是问题背后的问题。您可能希望仅为密码重置电子邮件设置内容类型的原因是,将所有系统电子邮件设置为text/html
将破坏默认密码重置电子邮件。
我建议使用retrieve_password_message
过滤器与wp_mail_content_type
筛选以使密码重置电子邮件与HTML格式兼容:
<?php
// adding support for html emails
// this converts ALL wp_mail emails to HTML, which messes up the password reset
add_filter( \'wp_mail_content_type\',\'squarecandy_set_content_type\' );
function squarecandy_set_content_type() {
return "text/html";
}
// add this filter too
// this will make the password reset email compatible with the HTML format
add_filter( \'retrieve_password_message\', \'squarecandy_retrieve_password_message\', 10, 1 );
function squarecandy_retrieve_password_message( $message ) {
// Revise the message content to make it HTML email compatible
$message = str_replace(\'<\',\'\',$message);
$message = str_replace(\'>\',\'\',$message);
$message = str_replace("\\n",\'<br>\',$message);
// make any additional modifications to the message here...
return $message;
}
否则,如果您只想将个人电子邮件设置为
text/html
, 这个
$GLOBALS
@signal2013的答案中的方法也有效,但可能更好地应用于针对您的自定义电子邮件,而不是默认的密码重置电子邮件(将此保留为默认设置
text/plain
).