【问题标题】:Magento: Creating a section and groups programmatically (includes screenshot)?Magento:以编程方式创建部分和组(包括屏幕截图)?
【发布时间】:2012-04-13 21:05:25
【问题描述】:

我不想使用 system.xml 以静态方式创建组和部分,而是想在代码中创建一个部分和组。请看截图:

屏幕上显示的内容是在模块 system.xml 中完成的,现在我想直接在代码中执行此操作。我还找到了构建表单的地方,它在 app/code/core/Mage/Adminhtml/Block/System/Config/Form.php 中的 initForm() em>函数。它在那里读取部分和内部组。我遇到的问题是,我不知道如何从这里开始。也许有人做过类似的事情,或者可以为我指明正确的方向。我猜部分原因是我自己创建了一个 Mage_Core_Model_Config_Element?

【问题讨论】:

    标签: magento


    【解决方案1】:

    这种使用系统/配置屏幕的方式不是 Magento 标准。

    如果您想保持标准,您有两种选择:

    1. 创建您自己的配置屏幕。
    2. 在 config.xml 中使用组的 frontend_model 属性

      <?xml version="1.0"?>
      <config>
          <sections>
              <your_section>
                  <groups>
                      <your_group>
                           <frontend_model>your_module/your_block</frontend_model>
                      </your_group>
                  </groups>
              </your_section>
          </sections>
      </config>
      

    然后,您可以使用提供的块做任何您想做的事情,动态创建任意数量的字段集,添加自定义字段等。

    此块必须扩展 Mage_Adminhtml_Block_System_Config_Form_Fieldset 并且如果您希望您的字段将数据保存在 core_config_data 中,它们将需要具有 name='groups[your_group][fields][your_field][value]' (Magento 将处理 your_section一部分给你)。

    您的字段也必须自己读取数据,只需将其放入其 value 属性中即可。

    【讨论】:

      猜你喜欢
      • 2019-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多