我们正在运行Magento 1.7.0并尝试对其进行扩展。该扩展需要一些配置,我们在etc / config.xml中配置它们。 问题是我们无法为这些配置设置默认值 我们的字段定义:
<config>
<sections>
<mymodule_options translate="label" module="mymodule_core">
<label>Mymodule Core Options</label>
<tab>mymodule_config</tab>
<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>
<groups>
<api translate="label">
<label>Advanced Options</label>
<frontend_type>text</frontend_type>
<sort_order>1</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
<expanded>1</expanded>
<fields>
<api_key>
<label>API Key</label>
<frontend_type>text</frontend_type>
<sort_order>1</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</api_key>
<server_host>
<label>Server Host</label>
<frontend_type>text</frontend_type>
<sort_order>2</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</server_host>
<server_port>
<label>Server Port</label>
<frontend_type>text</frontend_type>
<sort_order>3</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</server_port>
</fields>
</api>
</groups>
</mymodule_options>
</sections>
<default>
<mymodule_options>
<api>
<server_host>mymodule.herokuapp.com</server_host>
<server_port>80</server_port>
</api>
</mymodule_options>
</default>
</config>
然后我们从core_config_data中删除相关的行,然后error_log这些值:
Mage::getStoreConfig('mymodule_options/api/server_host')
但我们得到的是一个NULL值。如果我们在管理配置界面中将该值设置为随机值,那么无论如何我们都会得到该值。我们做错了默认值声明不起作用?
答案 0 :(得分:2)
正如R.S在评论中所说,您的<sections>
应该放在system.xml中,而<default>
放在config.xml中。