任何人都可以对下面的主题有所了解吗?
Magento的etc / config.xml,system.xml和adminhtml.xml之间有什么明显的区别?
哪些代码区分了上述三个XML文件?
这只是核心的magento知识。
答案 0 :(得分:24)
config.xml
文件包含Magento的全局配置信息,可供所有Magento“区域”使用。最初,没有adminhtml.xml
个配置文件。此信息位于config.xml
。 Magento的更高版本将此信息分解为adminhtml.xml
个文件,并且仅在系统提供后端管理页面时才将这些文件与其他config.xml
文件合并。
system.xml
个文件不是全局配置的一部分。它们是一个单独的系统,用于在后端应用程序中自动构建UI以设置系统配置值。
如何 Magento加载这些文件是一个长期涉及的故事,不适合Stack Overflow答案。如果你对这类事情感兴趣,我有一个four article series that covers this in detail。
短版本是config.xml
个文件在这里加载
#File: app/code/core/Mage/Core/Model/Config.php
$this->loadModulesConfiguration(array('config.xml',$resourceConfig), $this);
此处加载adminhtml.xml
个文件
#File: app/code/core/Mage/Admin/Model/Config.php
Mage::getConfig()->loadModulesConfiguration('adminhtml.xml', $adminhtmlConfig);
和system.xml
文件已加载到此处
#File: app/code/core/Mage/Adminhtml/Model/Config.php
$config = Mage::getConfig()->loadModulesConfiguration('system.xml')
->applyExtends();