gpt4 book ai didi

Magento 发送带有 PDF 附件的交易电子邮件

转载 作者:行者123 更新时间:2023-12-02 17:33:55 25 4
gpt4 key购买 nike

我有以下代码,它似乎是通过 magento 模型发送事务电子邮件(针对特定模板 ID)。

我唯一无法让它工作的是交易电子邮件上的 PDF 附件。

这是我到目前为止的代码:

function GetTransactionalSender() {
return array(
'name' => Mage::getStoreConfig('trans_email/ident_support/name'),
'email' => Mage::getStoreConfig('trans_email/ident_support/email')
);
}

function SendTransactionalEmail($templateId, $recepientEmail, $recepientName, $vars, $storeId, $pdf_attachment = '') {
$status = false;
try {
$transactionalEmail = Mage::getModel('core/email_template')
->setDesignConfig(array('area' => 'frontend', 'store' => $storeId));;
if (!empty($pdf_attachment) && file_exists($pdf_attachment)) {
$transactionalEmail
->getMail()
->createAttachment(file_get_contents($pdf_attachment), 'application/pdf')
->filename = basename($pdf_attachment);
}
$transactionalEmail
->sendTransactional($templateId, GetTransactionalSender(), $recepientEmail, $recepientName, $vars);
$status = true;
} catch (Exception $e) { }
return $status;
}

$template_id = 1;
$to_email = 'user@domain.com';
$to_name = 'User Name';
$vars = array();
$store_id = 1
$pdf_file = '/full/path/to/my/file.pdf';
$sent = SendTransactionalEmail($template_id, $to_email, $to_name, $vars, $store_id, $pdf_file);

发送电子邮件时,附件文件名显示为:ATT00001.pdf,当您打开它时,它是一个空白页。

知道我在这里做错了什么吗?您是否通过 Magento 模型将 PDF 附加到交易电子邮件中?

最佳答案

在这里找到了我的问题的解决方案:https://stackoverflow.com/a/10837774/2332336

以下是向交易电子邮件添加附件的正确代码段:

if (!empty($pdf_attachment) && file_exists($pdf_attachment)) {
$transactionalEmail
->getMail()
->createAttachment(
file_get_contents($pdf_attachment),
Zend_Mime::TYPE_OCTETSTREAM,
Zend_Mime::DISPOSITION_ATTACHMENT,
Zend_Mime::ENCODING_BASE64,
basename($pdf_attachment)
);
}

关于Magento 发送带有 PDF 附件的交易电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17164077/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com