WP_MAIL() 不发送附件
Posted
技术标签:
【中文标题】WP_MAIL() 不发送附件【英文标题】:WP_MAIL() not sending attachments 【发布时间】: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);
提前谢谢你。
【问题讨论】:
【参考方案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 格式,它会起作用。 哇...它现在可以工作了。非常感谢您的帮助。以上是关于WP_MAIL() 不发送附件的主要内容,如果未能解决你的问题,请参考以下文章
在 wordpress 中使用 wp_mail 发送 HTML 和纯文本电子邮件
使用 wp_mail() 将带有表单变量的电子邮件发送到电子邮件