回答
您有2个选项。
选项1.是重写发送电子邮件并将当前日期作为参数传递的方法。例如
比方说,您想要在订单电子邮件中显示日期。
为此,您需要重写Mage_Sales_Model_Order::sendNewOrderEmail
方法。
你需要改变这一点:
$mailer->setTemplateParams(array(
'order' => $this,
'billing' => $this->getBillingAddress(),
'payment_html' => $paymentBlockHtml
)
);
要这样:
$mailer->setTemplateParams(array(
'order' => $this,
'billing' => $this->getBillingAddress(),
'payment_html' => $paymentBlockHtml,
'dateAndTime' => Mage::getModel('core/date')->date('Y-m-d H:i:s'), //change format as needed.
)
);
然后你就可以在你的新订单电子邮件模板使用{{var dateAndTime}}
。
如果您只想在一个模板中使用日期和时间,这很方便。
如果你想你需要创建自己的指令,一个更一般的情况看选项2
选项2创建自己的{{}}
指令。
假设您希望在每封电子邮件中使用{{dateAndTime}}打印当前日期和时间。
您需要重写类Mage_Widget_Model_Template_Filter
并为其添加新方法。
See this detailed explanation about how to do it。
你的新方法应该是这样的:
public function dateAndTimeDirective($construction) {
return Mage::getModel('core/date')->date('Y-m-d H:i:s');
}
,你甚至可以把它上升一个档次,并能够通过日期格式像这样的参数:
{{dateAndTime format="Y-m-d"}}
在这种情况下,你处理该指令的方法应该是这样的:
public function dateAndTimeDirective($construction) {
$params = $this->_getIncludeParameters($construction[2]);
$format = isset($params['format']) ? $params['format'] : 'Y-m-d H:i:s'
return Mage::getModel('core/date')->date($format);
}
对于迟到的回复感到抱歉。在Mage_Widget_Model_Template_Filter上添加方法无效,我不知道为什么。但是我在'Mage_Core_Model_Email_Template_Filter'上添加了相同的方法,并且工作正常。非常感谢。 – Manoj 2014-12-01 10:55:54
从管理面板转到您的电子邮件模板。使用块指令如下
当前日期是:
{{block type='core/template' area='frontend' template='page/html/date.phtml'}}
在您的模板现在创建一个新的文件
date.phtml
在PHP标签如下app/design/frontend/yourtheme/yourtemplate/page/html/date.phtml
添加以下代码(使用PHP的日期功能和回波当前日期,即
date('d-m-Y')
)<pre><code> $date = date('d-m-Y'); echo $date; </code></pre>
希望这会有所帮助!
- 1. 如何在Magento电子邮件模板中获取条形码
- 2. Magento电子邮件模板
- 3. Magento电子邮件模板格式发票日期
- 4. Magento自定义电子邮件模板日期格式
- 5. Magento交易电子邮件模板
- 6. Magento电子邮件模板位置?
- 7. Magento多店电子邮件模板
- 8. 加载magento电子邮件模板
- 9. 电子邮件模板vars如何在Magento中使用?
- 10. Magento的1.9 - 在电子邮件模板只有日期星期格式
- 11. 如何列出magento 2中的发票电子邮件模板?
- 12. 在管理面板中的另一个电子邮件模板中包含magento电子邮件模板
- 13. Magento:电子邮件模板崩溃新模板表
- 14. 如何修改Magento Share Wishlist电子邮件模板?
- 15. Magento用upc/ean在电子邮件模板中替换sku
- 16. Magento电子商务模板
- 17. Magento电子邮件模板如果语句
- 18. Magento - 电子邮件变量
- 19. magento中每个主题的自定义电子邮件模板
- 20. Magento - 获取当前产品
- 21. 如何在Redmine中获取当前用户电子邮件?
- 22. 如何获取Magento中的文本字段的值,然后将其显示在电子邮件模板中
- 23. 电子邮件模板Magento不起作用
- 24. Magento电子邮件模板位于哪里?
- 25. Magento电子邮件模板:块无法从adminhtml呈现
- 26. Magento-将最新产品设置为电子邮件模板
- 27. Magento,新订单电子邮件模板总数
- 28. 如何循环遍历Magento电子邮件模板中的变量?
- 29. 在Magento的同一个电子邮件模板中添加一个条件来修改电子邮件内容
- 30. 未在Magento发送的电子邮件
请在这里提供一些代码。这样我就可以结帐。 – Elavarasan 2014-11-04 07:10:26
你看过[this](http://stackoverflow.com/questions/19221799/hide-time-in-transaction-mails-with-var-order-getcreatedatformatedshort)吗? – VivienG 2014-11-04 08:25:58