magento - 为电子邮件模板下拉列表添加更多选项

时间:2013-09-25 04:27:47

标签: php magento email-templates

我创建了一个模块,我想添加一些自定义电子邮件模板作为电子邮件模板下拉列表的选项,例如,"创建新帐户"在Admin > System > Configuration > Customers > Customer Configuration

我尝试在自定义模块中添加节点,例如

<global>
    <template>
        <email>
            <customer_account_create_template>
                ...
            </customer_account_create_template>
        </email>
    </template>
</global>

请注意,当我写这篇文章时,我没有代码,因此customer_account_create_template可能不正确,但我已成功用我的自定义模板替换了该选项。

关键是,我想将其添加为另一个选项,而不是替换默认选项。那么,你有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

config.xml处添加您应该在全局代码中声明您的模板,并在其上添加标签。

<global>
    <template>
        <email>
            <custom_email_template translate="label" module="yourcustommodule">
                <label>Custom Email Template</label><!-- this should be shown in the config dropdown-->
                <file>mymodule/custom_email.html</file>
                <type>html</type>
            </custom_email_template>
        </email>
    </template>
</global>

system.xml字段必须与_ instead of /的模板名称匹配。在您的情况下为custom_email_template。

所以你的system.xml应该是这样的:

<sections>
    <custom ...>
       <groups>
           <email ....>
              <template>
                  <label>Email Template</label>
                  <show_in_default>1</show_in_default>
                  <show_in_website>1</show_in_website>
                  <show_in_store>1</show_in_store>
                  <sort_order>5</sort_order>
                  <frontend_type>select</frontend_type>
                  <source_model>adminhtml/system_config_source_email_template</source_model>
              </template>
           </email>
       </groups>
    </custom>
</sections>

<default>中的config.xml标记应为

  <default>
        <custom>
          <email>
              <template1>custom_email_template1</template1>
              <template2>custom_email_template2</template2>
          </email>
        </custom> 
    </default>