Magento邮件模板无法预览

Magento内置很丰富强大邮件模板功能,一般新建一个magento站点需要根据自己的需要修改模板,这个时候会经常用到模板预览的功能,如下

magento邮件模板无法预览

在System—Transactional Emails创建模板的时候右上角有个Preview Template一般点击这个按钮就可以预览当前加载的邮件模板了。但是今天在操作的时候发现有个问题,每次点击预览模板的时候总是调到管理后台首页,研究了下,发现这应该是Magento 1.6x的一个小bug,解决方法如下:

打开app/code/core/Mage/Adminhtml/Block/System/Email/Template/Preview.php编辑,找到下面的一段代码注释掉:

$template->setTemplateText(
$this->escapeHtml($template->getTemplateText())
);

完整的样子应该如下:

class Mage_Adminhtml_Block_System_Email_Template_Preview extends Mage_Adminhtml_Block_Widget
 35 {
 36
 37     protected function _toHtml()
 38     {
 39         $template = Mage::getModel('core/email_template');
 40         if($id = (int)$this->getRequest()->getParam('id')) {
 41             $template->load($id);
 42         } else {
 43             $template->setTemplateType($this->getRequest()->getParam('type'));
 44             $template->setTemplateText($this->getRequest()->getParam('text'));
 45             $template->setTemplateStyles($this->getRequest()->getParam('styles'));
 46         }
 47 //        $template->setTemplateText(
 48 //            $this->escapeHtml($template->getTemplateText())
 49 //        );
 50 //
 51         Varien_Profiler::start("email_template_proccessing");
 52         $vars = array();
 53
 54         $templateProcessed = $template->getProcessedTemplate($vars, true);
 55
 56         if($template->isPlain()) {
 57             $templateProcessed = "<pre>" . htmlspecialchars($templateProcessed) . "</pre>";
 58         }
 59
 60         Varien_Profiler::stop("email_template_proccessing");
 61
 62         return $templateProcessed;
 63     }
 64
 65 }
                   

这样就没问题了。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部