2011-06-30 14 views
0

トランザクションメールにファイルを添付する必要があります。基本的に私はレポートを生成するcronジョブを持っており、管理者ユーザーに電子メールを送る必要があります。Magento - トランザクション電子メールにファイルを添付することは可能ですか?

私はこの存在するような何かを期待していた。すべての助けを事前に

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

感謝を。

+0

?私が尋ねる理由は、最新のバージョンで電子メールコードが変更されたため、自分の「自動添付請求書PDF」のコードが破られたため、あなたが見つけたソリューションに興味があります。 –

+0

Im Magento版です。 1.4.1.1 – woot586

+0

あなたはすでにそこにいるようです。価格が更新されたときに上司にメールを送る(cronで動作する)アップデート価格モジュールを持っているので、完成したブロックを一緒に置くことができれば嬉しいです。 –

答えて

6

私はmagentoがzend_mailフレームワークを使用していることがわかりました。このフレームワークにアクセスして添付ファイルを追加するには、getMail関数を呼び出すことができます。使用しているのMagentoのバージョンは何

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