首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Magento - eMail变量

Magento - eMail变量
EN

Stack Overflow用户
提问于 2016-07-28 16:26:32
回答 1查看 61关注 0票数 0

我想自定义我的订单确认,我可以在我的模板中使用if语句,否则我可以自定义sendNewOrderEmail()函数,以基于一些信息选择两个不同的模板。

然而,我想知道,因为我使用某些扩展来向客户提供交付日期和时隙。目前,我使用占位符{{layout handle="deliverydate_email_information" order=$order}}来显示交付日期。在订单确认中,如下所示:

代码语言:javascript
复制
Thursday, 28. July, 8pm - 10pm

但我希望这些信息包含在三个占位符中,如下所示:

代码语言:javascript
复制
{deliverydate_weekday}
{deliverydate_date}
{deliverydate_time}

有谁知道我如何才能增强我的Magento系统,使之成为可能?我假设我可以通过实现自己的layout handle="deliverydate_email_information"来做到这一点,但是我该怎么做呢?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2016-07-28 17:09:06

对于{deliverydate_weekday} {deliverydate_date} {deliverydate_time}

您需要在sendNewOrderEmail()中定义变量,如下所示(在您要发送电子邮件的自定义模块中定义或扩展类。请勿编辑代码文件):

代码语言:javascript
复制
    //get the value of $weekday, $deliverydate and $time from your extension 
$vars = Array('deliverydate_weekday' => $weekday,
                  'deliverydate_date' => $deliverydate,
                  'deliverydate_time' => $time);

$storeId = Mage::app()->getStore()->getId();
$translate  = Mage::getSingleton('core/translate');
Mage::getModel('core/email_template')
->setTemplateSubject($mailSubject)
->sendTransactional($templateId, $sender, $email, $name, $vars, $storeId);

您可以将模板文件中的变量用作:

代码语言:javascript
复制
{deliverydate_weekday} {deliverydate_date} {deliverydate_time}

您可以像这样编写use if指令:

代码语言:javascript
复制
    {{if order.getIsNotVirtual()}}
         //some code
    {{else}}
         //some code
    {{/if}}

有关更多信息,请查看以下内容:https://magento.stackexchange.com/questions/5919/send-custom-mail-with-variable-via-script

http://excellencemagentoblog.com/blog/2011/11/25/magento-advanced-transactional-email-templates/

http://www.justwebdevelopment.com/blog/transactional-emails-variable-magento/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38630922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档