无法为magento扩展设置默认配置

时间:2012-11-23 13:50:19

标签: magento

我们正在运行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值。如果我们在管理配置界面中将该值设置为随机值,那么无论如何我们都会得到该值。我们做错了默认值声明不起作用?

1 个答案:

答案 0 :(得分:2)

正如R.S在评论中所说,您的<sections>应该放在system.xml中,而<default>放在config.xml中。