5

我正在开发一个 Wordpress 插件,在该插件中我使用 PHP 邮件功能发送电子邮件。在电子邮件正文中,我正在制作一个超链接。我正在 Windows 8 Mail App 中检查已发送的电子邮件。在电子邮件中,我看不到超链接,它只是纯文本。为什么会这样?我正在使用以下代码发送电子邮件:

ini_set("include_path", ".:/PHPMailer_5.2.4/");
        require_once("../../../PHPMailer_5.2.4/class.phpmailer.php");
        global $wpdb;
        $to = "Receiver email";  // change this address with yours
        $subject = "subject";
        $name="name";
        $from="name@domain.com";

    $message = "<p>Please <a href='www.domain.com/unsubscribe.php?".$to."' target='_blank' onclick='unsubscribe_js($to);'>click here</a> to unsubscribe, if you don't want to getting more emails from us.</p>";

    $mail = new PHPMailer();
    $mail->IsSMTP();  // telling the class to use SMTP
    $mail->Host     = "mail.domain.com"; // SMTP server
    $mail->SMTPAuth = true;
    $mail->Username = "user@domain.com";
    $mail->Password = "Password";
    $mail->FromName = $name;
    $mail->From     = $from;
    $mail->AddAddress($to);
    $mail->Subject  = $subject;
    $mail->MsgHTML($message);
    $mail->WordWrap = 50;
    $mail->Send();

我将“单击此处”设置为超链接,但它在 Windows 8 邮件应用程序中显示为纯文本。你能提出任何解决方案吗?

4

3 回答 3

0

您是否尝试过在 html 标签中使用双引号并使用单引号作为字符串分隔符?

于 2014-01-21T18:21:51.793 回答
0

您是否尝试设置 $mail->IsHTML(true); ?

于 2013-11-09T09:24:26.867 回答
0

对我来说,邮件应用程序的错误似乎更多,而不是脚本的错误,因为我在网上发现了一些其他文章(link1link2等),它们提到了这个问题,但在不同的场景中。

我想提一下我在technet上找到的解决方案,供您尝试。

1. open regedit
2. delete 'HKEY_CURRENT_USER\Software\Classes\CLSID' key. (You may need to do a backup before killing it.)
3. reboot.

不用担心,如果有很多密钥CLSID,它们将在重新启动时重新创建。希望这个解决方案有所帮助。

于 2014-01-22T05:59:24.213 回答