WP_mail去掉邮件内容中锚标签中的链接url

时间:2013-07-02 作者:Subharanjan

当电子邮件内容包含url链接时,如:mobileappname://accesstoken#w34rdgtsrt5v6m,则,<a href="mobileappname://accesstoken#w34rdgtsrt5v6m">Click</a> wp\\u mail函数从锚定标记中删除url,但链接不起作用。当url附加了/具有http:///时,链接会起作用。这是我正在使用的代码。任何帮助或提示都将被告知!!

提前谢谢!!

$subject = \'Mobile App Activation link\';
$activation_url = \'mobileappname://accesstoken#w34rdgtsrt5v6m;
$activation_link = \'<a href="\' . $activation_url . \'" title="Verify">\' . $activation_url . \'</a>\';      

$mail_message = \'<p>Thank you for signing up with us!</p>\';
$mail_message .= \'<p>Please click the verification link in order to complete the signup process.</p>\';
$mail_message .= \'<p>Verification Link: \' . $activation_link . \'</p>\';

add_filter( \'wp_mail_content_type\', create_function( \'\', \'return "text/html";\' ) );
add_filter( \'wp_mail_from_name\', \'mysite_from_name\' );
add_filter( \'wp_mail_from\', \'mysite_from_email\' );

$res = wp_mail( $user_email, $subject, $mail_message );
通过Firebug发送的电子邮件内容的来源如下:(href=“”已删除)

<a title="Verify" target="_blank">mobileappname://accesstoken#fs2fmhsf4nsv94s</a>

1 个回复
最合适的回答,由SO网友:Adam 整理而成

您缺少一个报价\'

$activation_url = \'mobileappname://accesstoken#w34rdgtsrt5v6m;
应该是。。。

$activation_url = \'mobileappname://accesstoken#w34rdgtsrt5v6m\';
或(使用双引号)。。。

$activation_url = "mobileappname://accesstoken#w34rdgtsrt5v6m";
更新时间:

有关更多信息,请参阅此codex条目:http://codex.wordpress.org/Function_Reference/wp_mail

add_filter( \'wp_mail_content_type\', \'set_html_content_type\' );
wp_mail( \'[email protected]\', \'The subject\', \'<p>The <em>HTML</em> message</p>\' );
remove_filter( \'wp_mail_content_type\', \'set_html_content_type\' ); // reset content-type to to avoid conflicts -- http://core.trac.wordpress.org/ticket/23578

function set_html_content_type()
{
    return \'text/html\';
}
基本上,您需要删除纯文本过滤器,并将其替换为文本/html过滤器,以正确解析通过电子邮件发送的html内容。

结束

相关推荐