假设我将以下变量传递给我的电子邮件模板:
$vars = array(
'products' => $products,
);
$products
是一个集合,我怎么能在电子邮件模板中迭代这个集合?
答案 0 :(得分:5)
我不相信Magento的模板引擎足够聪明来做循环。相反,使用内联块,就像Magento对订单商品所做的那样。像这样:
{{block type='core/template' area='frontend' template='path/to/your/template.phtml' products=$products}}
希望有所帮助!
谢谢, 乔
答案 1 :(得分:1)
上述工作,但另一种方法是让你的XML通过调用电子邮件模板中的布局句柄来完成工作:
{{layout handle="email_stuff"}}
在local.xml或module.xml中或您喜欢的地方:
<email_stuff>
<block type="yourblock/type" name="email_stuff" template="path/to/template.phtml" />
</email_stuff>
我猜主要区别在于你在做大部分电子邮件“工作”。我已经使用此方法加载在每个模板中保持相同的电子邮件页眉/页脚。但是,之前的答案对于基本任务来说可能更简单。