如何覆盖config.xml


15

我需要将“与我们联系”页面的电子邮件模板类型从“文本”更改为“ HTML”。我发现它在config.xml中

 <email>
    <contacts_email_email_template translate="label" module="contacts">
       <label>Contact Form</label>
       <file>contact_form.html</file>
       <type>text</type>
    </contacts_email_email_template>
 </email>

如何正确覆盖config.xml

[编辑]这适用于文件app / code / core / mage / contact / etc / config.xml,以下答案适用于任何... / mage / ANYTHING / etc / config.xml

Answers:


22

创建您自己的模块([Namespace]_[Module])。
为此,您需要:
app/etc/modules/[Namespace]_[Module].xml-声明文件

<?xml version="1.0"?>
<config>
    <modules>
        <[Namespace]_[Module]>
            <codePool>local</codePool>
            <active>true</active>
            <depends>
                <Mage_Contacts /><!-- so the config is loaded after the one from Mage_Contacts -->
            </depends>
        </[Namespace]_[Module]>
    </modules>
</config>

app/code/local/[Namespace]/[Module]/etc/config.xml -配置文件

<?xml version="1.0"?>
<config>
    <modules>
        <[Namespace]_[Module]>
            <version>1.0.0</version>
        </[Namespace]_[Module]>
    </modules>
    <global>
        <template>
            <email>
                <contacts_email_email_template>
                    <type>html</type><!-- same xpath as in the original config file -->
                </contacts_email_email_template>
            </email>
        </template>
    </global>
</config>

清除缓存,您就可以开始了。
基本上,这就是您可以覆盖的任何节点的方法config.xml。只需创建一个模块,然后在config.xml文件中复制原始节点路径并添加值即可。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.