2012-08-07 54 views

回答

0

首先创建自定义的电子邮件来自Transactions emails的模板和文本类型设置为纯文本。记下该模板ID。并在以下文件中使用。

\app\code\local\Mage\Sales\Model\Order.phpsendNewOrderEmail()负荷手工模板和发送变量到和发送电子邮件。

+0

这就是它的工作原理 – user1537552 2013-05-08 12:02:25

+0

@ user1537552,直到您必须更新magento并且无法确定您的系统为什么神秘失败。 – Walf 2016-02-26 00:10:03

0

你必须覆盖和扩展Mage_Core_Model_Email_Template模型来实现这一目标,并从那里设置正确的头,你不能把这些分开的用户,并且ahve建立自己的逻辑为

+0

请详细告诉我..我是新来的这一切..请:( – user1537552 2012-08-07 06:46:39

+0

确切哪些文件和功能我需要改变? – user1537552 2012-08-07 06:48:45

+0

你需要学习如何搜索:)打开这个文件,看看在哪里邮件对象get的发起 – 2012-08-07 06:50:23

1

对于未来的读者,为别人建议不要修改核心文件。您可以在配置中使用小型定制模块来实现此目的。

我已经安装了AheadWorks的博客模块,你可能没有,或者你可能需要他们的电子邮件格式覆盖其他模块。所以,相应地调整。

创建app/etc/modules/YourNameSpace_EmailFormat.xml并添加到<depends>,使你的配置最后加载:

<?xml version="1.0"?> 
<config> 
    <modules> 
     <YourNameSpace_EmailFormat> 
      <active>true</active> 
      <codePool>local</codePool> 
      <depends> 
       <Mage_Contacts/> 
       <AW_Blog/> 
      </depends> 
     </YourNameSpace_EmailFormat> 
    </modules> 
</config> 

创建app/code/local/YourNameSpace/EmailFormat/etc/config.xml,添加元素为所有要覆盖模板:

<?xml version="1.0"?> 
<config> 
    <modules> 
     <YourNameSpace_EmailFormat> 
      <version>1</version> 
     </YourNameSpace_EmailFormat> 
    </modules> 
    <global> 
     <template> 
      <email> 
       <customer_create_account_email_template> 
        <type>text</type> 
       </customer_create_account_email_template> 
      </email> 
     </template> 
    </global> 
</config> 

就是这样。我需要相反的,所以我有<type>设置为html。这与Yireo's Email Override module非常吻合,因此您可以轻松地自定义您的模板。如果将纯文本电子邮件转换为HTML,请确保将模板标记(如{{var foo.bar}})更改为{{htmlescape var=$foo.bar}}以防止恶意代码注入。

相关问题