2011-06-30 68 views
0

我需要將文件附加到交易電子郵件。基本上我有一個cron作業生成一個報告,並需要通過電子郵件發送給管理員用戶。Magento - 是否可以將文件附加到交易電子郵件?

我希望這樣的事情存在:提前任何幫助

Mage::getModel('core/email_template') 
       ->setDesignConfig(array('area'=>'frontend', 'store'=>1)) 
       ->createAttachment($file) 
       ->sendTransactional($templateID, $sender, $email, 「Admin", $vars); 

感謝。

+0

您正在使用什麼版本的Magento的?我問的原因是電子郵件代碼在最新版本中發生了變化,打破了我的'自動附加發票PDF'代碼,因此我對您找到的解決方案感興趣(如果您的搜索結果大於1.4)。 –

+0

我在Magento版本。 1.4.1.1 – woot586

+0

聽起來像你已經在那裏。如果您可以將您的完成區塊放在一起,我會希望它,因爲我也有一個更新價格模塊,可以在價格更新(它運行在cron上)時給老闆發電子郵件。 –

回答

6

我發現magento使用zend_mail框架工作。您可以調用getMail函數來訪問此框架以添加附件。

http://framework.zend.com/manual/en/zend.mail.attachments.html

$transactionalEmail = Mage::getModel('core/email_template')->setDesignConfig(array('area'=>'frontend', 'store'=>1)); 

$transactionalEmail->getMail()->createAttachment($fileContents,'text/csv')->filename = $filename; 

$transactionalEmail->sendTransactional($templateID, $sender, $email, "Admin", $vars); 
+1

什麼是$ fileContents? – MagikVishal

+0

這是file_get_contents($ filePath) – Wouter