2011-03-17 87 views
0

我希望更改客戶與朋友分享自己的願望清單時發送的share wishlist電子郵件的發件人電子郵件地址,我試圖將custmer電子郵件作爲發件人地址和客戶名稱作爲從名字,認爲它可以在管理員來完成,你只可以把它改成一個又一個,但我想在客戶的電子郵件,在這裏需要一些幫助在magento中更改共享wishlist郵件的發件人電子郵件地址

感謝

回答

0

瀏覽一下代碼後,它似乎是這個電子郵件是發送從

app/code/core/Mage/Wishlist/controllers/IndexController.php 

所以,你需要覆蓋此控制器。我從來沒有做過這樣的事情,但它是可行的。有一個話題here,如果你谷歌'magento覆蓋控制器',你還會發現很多信息。

之後,您必須重新實施(意思是複製和編輯)方法sendAction()。在它是一個呼叫

$emailModel->sendTransactional(); 

我也想你應該離開發件人地址,這家店的,因爲它 設置到另一個地址可能將郵件標記爲垃圾郵件。但是如果你想 這樣做,只需將此調用的第二個參數更改爲具有鍵'名稱' 和'email'和期望值的數組。

但我強烈建議設置Reply-To標頭。這是可能的,因爲這個模型使用一個Zend_Mail對象來完成髒的工作,並把這個對象當作一個單例。這意味着如果您將它創建爲第一個並對其進行配置,則將使用此配置發送下一封郵件。在代碼中,改變

foreach($emails as $email) { 
    $emailModel->sendTransactional(
     Mage::getStoreConfig('wishlist/email/email_template'), 
//snip 

foreach($emails as $email) { 
    $mail = $emailModel->getMail(); 
    $mail->setReplyTo($customer->getEmail()); 
    $emailModel->sendTransactional(
     Mage::getStoreConfig('wishlist/email/email_template'), 
//snip 

成功

+0

謝謝,我會記住你的建議,再次感謝 – 2011-03-22 13:51:11

1

我會不這樣做。相反,我會將發件人地址設置爲我的網上商店的地址,並將Reply-To標題設置爲收件人朋友的標頭。從類似地址的欺騙行爲可能會使您的電子郵件陷入垃圾郵件陷阱。

+0

我甚至不知道如何改變重播到,這就是我想要找出來,但我不要以爲改變地址可能是一個壞的方法,實際上,這就是我想要做的,任何想法如何去做,謝謝 – 2011-03-17 18:10:42

相關問題