Magento以编程方式设置模板变量

问题描述:

我需要能够发送包含条件句子的交易电子邮件。我想在包含某些产品的任何订单的订单确认电子邮件中包含一个句子。有很多关于如何在基于内置变量的交易电子邮件中使用条件的示例,但是我想基于自己的变量创建条件,我将从我自己的扩展中以编程方式创建。Magento以编程方式设置模板变量

的邮件类Mage_Core_Model_Email_Template_Mailer确实有一个公共setTemplateParams方法,但该方法只是调用基类SetData方法,即使我能访问的方法来设置自己的参数,它会覆盖已所必要的的核心模板参数显示篮子的内容。

任何想法如何实现这一点,将不胜感激。

您应该在保存条件语句的位置创建一个新的订单属性。 然后你就可以很容易地在交易电子邮件模板通过{{htmlescape var=$order.getYourAttribute()}}

+0

谢谢,但我不确定getYourAttribute()位。篮子里可能有几件物品,我如何确定篮子是否包含我感兴趣的任何物品?如果篮子只包含普通产品,那么我想发送默认订单电子邮件,但是如果篮子包含一个或多个特定类型的商品,那么我希望在电子邮件中包含一个句子,而不是多少种类型的物品存在于篮子里。 – Dom 2013-04-25 12:41:16

要创建相关的属性访问属性到实体产品或客户

对于客户,您可以通过 {{VAR order.getCustomer得到它().getAttrName()}}

+0

感谢您的回答,但我很抱歉,我不明白这将如何帮助我。如何使用此代码检测结帐时是否有特定类型的产品在购物篮中? – Dom 2013-04-25 22:09:22