Magento:电子邮件模板崩溃了新的模板表单

时间:2011-11-04 14:48:48

标签: zend-framework magento

我有一个模块,我正在尝试使用我创建的电子邮件模板。我直接创建.phtml模板(不是通过后端的新模板表单)到locale> en_US>模板>电邮文件夹。模板似乎工作,因为传递给它的变量工作,电子邮件被发送好。我唯一的问题是,现在当我进入管理层>交易电子邮件>新模板,页面崩溃。下拉列表是空的,之后的所有内容都不会被渲染。

我认为这可能与我在模块config.xml中加载模板的方式有关。当我删除对模板的引用时,问题就消失了。重新放入引用,表单崩溃..

的Config.xml

<?xml version="1.0"?>
<config>
  <modules>
    <Optimise_Requestcallback>
      <version>0.1.9</version>
    </Optimise_Requestcallback>
  </modules>
  <frontend>
    <routers>
      <requestcallback>
        <use>standard</use>
        <args>
          <module>Optimise_Requestcallback</module>
          <frontName>request-callback</frontName>
        </args>
      </requestcallback>
    </routers>
    <layout>
      <updates>
        <requestcallback>
          <file>optimise.xml</file>
        </requestcallback>
      </updates>
    </layout>
  </frontend>
  <global>
    <template>
        <email>
            <requestcallback_template translate="label" module="requestcallback">
                <label>Optimise RequestCallback</label>
                <file>requestcallback_template.html</file>
                <type>html</type>
            </requestcallback_template>
        </email>
    </template>
</global>
</config>

以下是我发送电子邮件的方式:

public function sendemailAction() {


    $emailTemplate = Mage::getModel('core/email_template')
                    ->loadDefault('requestcallback_template');


    $emailTemplateVariables = array();

    //Fetch submited params
    $params = $this->getRequest()->getParams();

    $subjectOfMail = "Request a Callback from the Puji Website<br /><br />Product = " . $params['product'] . "<br />Name = " . $params['name'] . "<br />Email = " . $params['email'] . "<br />Telephone = " . $params['telephone'] . "<br />Message = " . $params['comment'];

    $emailTemplateVariables['body'] = $subjectOfMail;


    $emailTemplate->setSenderName($params['name']);
    $emailTemplate->setSenderEmail($params['email']);

    try {
        $emailTemplate->send('billy@optimiseweb.co.uk', 'Sales', $emailTemplateVariables);
        Mage::getSingleton('core/session')->addSuccess('Thank you! We will contact you very soon.');
    } catch (Exception $ex) {

        $translate->setTranslateInline(true);

        Mage::getSingleton('customer/session')->addError(Mage::helper('contacts')->__('Unable to submit your request. Please, try again later'));
        $this->_redirect('*/*/');
        return;
    }

    //Redirect back to index action of (this) activecodeline-simplecontact controller
    $this->_redirect('request-callback/');
}

模板本身可能不会更简单!

<!--@subject Request a Callback from the Puji Website @-->

{{var body}}

任何人都可以在此处看到导致新模板形式崩溃的问题吗?

1 个答案:

答案 0 :(得分:0)

可能有多种原因,但请先逐个检查每个自定义模块的config.xml文件。

必须有一个模块,您可以在其中找到如下代码:

module="[some-module-name-here]"

尝试逐个删除此代码,然后重新加载事务性电子邮件模板表单。

我相信,它会解决问题。