Answers:
对于system.xml
文件,它不像对类文件那样起作用。这些system.xml
文件是从Magento的活动模块中收集的。仅将一个local
文件复制到文件夹中并不意味着它在模块中,因为模块声明文件仍然表明该模块属于core
代码池。
如果要向节中添加新字段或覆盖某些字段,则需要创建自己的模块。
这是一个示例,说明如何在此部分中添加新字段Catalog->Frontend
以及如何在同一部分中覆盖一个新字段。
假设您的模块称为Easylife_Catalog
。
您将需要以下文件:
app/etc/modules/Easylife_Catalog.xml
-声明文件
<?xml version="1.0"?>
<config>
<modules>
<Easylife_Catalog>
<active>true</active>
<codePool>local</codePool>
<depends>
<Mage_Catalog />
</depends>
</Easylife_Catalog>
</modules>
</config>
app/code/local/Easylife/Catalog/etc/config.xml
-配置文件
<?xml version="1.0"?>
<config>
<modules>
<Easylife_Catalog>
<version>0.0.1</version>
</Easylife_Catalog>
</modules>
</config>
app/etc/local/Easylife/Catalog/etc/system.xml
-系统->配置文件
假设您要将List Mode
字段更改为仅在全局级别可用(没有网站和商店视图级别)。设置路径为catalog/frontend/list_mode
。然后system.xml
将如下所示:
<?xml version="1.0"?>
<config>
<sections>
<catalog><!-- first part of the path -->
<groups>
<frontend><!-- second part of the path -->
<fields>
<list_mode><!-- third part of the path -->
<show_in_website>0</show_in_website><!-- this will override the core value -->
<show_in_store>0</show_in_store><!-- this will override the core value -->
</list_mode>
</fields>
</frontend>
</groups>
</catalog>
</sections>
</config>
现在,假设您要custom
在同一配置节中添加一个新字段。现在,上面的xml变为
<?xml version="1.0"?>
<config>
<sections>
<catalog><!-- first part of the path -->
<groups>
<frontend><!-- second part of the path -->
<fields>
<list_mode><!-- third part of the path -->
<show_in_website>0</show_in_website><!-- this will override the core value -->
<show_in_store>0</show_in_store><!-- this will override the core value -->
</list_mode>
<custom translate="label"><!-- your new field -->
<label>Custom</label>
<frontend_type>text</frontend_type>
<sort_order>1000</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</custom>
</fields>
</frontend>
</groups>
</catalog>
</sections>
</config>
我不知道是否存在使用此方法从配置中删除某些字段的方法。我在寻找它,但没有找到任何东西。
app/etc/modules
加载所有模块声明文件(),然后<depends>
解析所有标签并建立模块层次结构。然后按该顺序加载模块。