【问题标题】:WP_MAIL() not sending attachmentsWP_MAIL() 不发送附件
【发布时间】:2019-07-02 21:47:18
【问题描述】:

我正在开发一个插件,我需要在其中发送带有附件的电子邮件。我已经尝试过使用下面的代码,但它对我不起作用。它发送电子邮件但没有附件。如果我做错了什么,请指导我。

附件数组如下:

[附件] => 数组 ( [0] => https://www.xxxx.com/wp-content/uploads/2019/02/test.docx)

注意:我已检查附件文件是否具有 644 文件权限。

$attachments = 数组(); if(isset($email['附件']) && 计数($电子邮件['附件'])>0){ $attachments = $email['附件']; }

$headers = 数组();

$headers[] = '内容类型:文本/html;字符集=UTF-8';

$headers[] = '来自:' 。 $from_name 。 ' ';

if(isset($email['reply_name']) && isset($email['reply_to'])){

$headers[] = 'Reply-To: ' . $email['reply_name'] . ' <' . $email['reply_to'] . '>';

}elseif(isset($email['reply_to'])){

$headers[] = 'Reply-To: <' . $email['reply_to'] . '>';

}

wp_mail($email['recipients'], $email['subject'], $email['content'], $headers, $attachments);

提前谢谢你。

【问题讨论】:

    标签: php wordpress email


    【解决方案1】:

    你能给出“$attachments”的结果吗?

    谢谢。

    [编辑]

    发送附件需要特殊格式:

        $attachments = array( WP_CONTENT_DIR . '/uploads/file_to_attach.zip' );
    

    【讨论】:

    • 我已经更新了问题。你可以在那里找到它。
    • [附件] => 数组([0] => xxxx.com/wp-content/uploads/2019/02/test.docx
    • 好的,谢谢。现在我明白为什么它不起作用了。您需要一种特殊的格式来发送附件:$attachments = array(WP_CONTENT_DIR.'/uploads/file_to_attach.zip');尝试使用这种 URL 格式,它会起作用。
    • 哇...它现在可以工作了。非常感谢您的帮助。
    猜你喜欢
    • 2012-10-19
    • 2016-09-20
    • 1970-01-01
    • 2017-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多