Magento中config.xml的结构与常用标签解释

        magento每个模块都存在etc文件夹,这是必须的文件夹,里面至少存在一个config.xml的配置文件,这个文件的配置是否正确,直接给予模块是否能正确运行,起关键性作用。Magento总是通过配置文件来获得类名,这个逻辑看起来有些复杂,但这样做的优点也很明显,我们可以不需要更改Magento的代码就能更 改Magento的核心功能。
config.xml配置文件总以<config>做为根标签。里面包含着各个功能的标签组。


文件大致结构

<config>

    <modules> 声明该模块所在的代码区里面的文件夹的名称;

    <admin> 定义后台相关路由(一般只涉及路由);

    <adminhtml> 定义后台layout,events,translate等;

    <frontend> 定义前台相关路由,layout,events,translate等;

    <global> 定义该模块下全局(包括前台和后台)的block,helper,model等相关类的指定;

</config>


详细解释:
===============================================
<modules>
    <代码包文件夹名称_模块名>
        <version>0.2.0</version>
   </代码包文件夹名称_模块名>

</modules>


modules标签比较简单,只是声明该模块所在的代码区里面的文件夹的名称,比如Mage文件夹,如果模块在的代码区在local,则是根据自己定义的文件夹来声明,version标签,则是该模块的版本号。该版本号直接影响到sql文件夹下的安装文件。


================================================
<admin>
    <routers>
       <前端名称>
           <use>admin</use>
           <args>
                <module>代码包名称_模块名</module>
                <frontName>前端名称</frontName>
           </args>
        </前端名称>
    </routers>
</admin>


admin标签组,定义后台相关路由(一般只涉及路由),frontName标签定义访问时所涉及的模块名,这涉及到路由部分,这里就不说了。use标签,定义的是使用权限,一般后台都定义为admin,这里的模块名与frontName定义的同名


================================================
<adminhtml>
<layout>
定义layout
</layout>
<translate>
定义翻译module
</translate>
<events>
  定义事件observer 
</events>
</adminhtml>

adminhtml标签组,定义后台layout,events,translate等;


================================================
<frontend>
<routers>
<前端名称>
<use>standard</use>
<args>
<module>代码包名称_模块名</module>
<frontName>前端名称</frontName>
</args>
</前端名称>
</routers>
<layout>
<updates>
<前端名称>
<file>布局文件</file>
</前端名称>
</updates>
</layout>
</frontend>

frontend标签组,定义前台相关路由(一般只涉及路由),frontName标签定义访问时所涉及的模块名,这涉及到路由部分,这里就不说了。
use标签,定义的是使用权限,一般后台都定义为standard,这里的模块名与frontend定义的同名。
layout标签指定该模块使用哪个布局文件。


================================================
<global>
global标签,该标签定义该模块下的block,helper,model等相关类的指定,比如:


<helpers>
<前端名称>
<class>该模块下类文件包</class>
</前端名称>
</helpers>


新建模块,如有helper类,都需要在这里指定,有block类也也需要相应的指定才会起作用。model类也是如此,只是model标签,如有数据表,会要求指定resourceModel标签,如是重写的模块,类都应该是加<rewrite>下的,而不能直接指定<class>例如:


<models>
<前端名称>
<class>model类文件夹</class>
<resourceModel>资源名称</resourceModel>
</前端名称>
<资源名称>
<class>资源类文件夹</class>
<entities>
<实体类名><table>表名</table></实体类名>
</entities>
</资源名称>
</models>


资源名称一般会设定为前端名称_mysql4文件夹,资源类文件夹也指定到此文件夹,实体类名为表对应的类,并不是所有的表都会有实体类。


resources标签,该标签只有模块需要安装文件时才指定。例如:


<resources>
<前端名称_setup>
<setup>
<module>代码包名称_模块名</module>
<class>资源安装类</class>
</setup>
<connection>
<use>core_setup</use>
</connection>
</前端名称_setup>

<前端名称_read>
<connection>
<use>core_read</use>
</connection>
</前端名称_read>

<前端名称_write>
<connection>
<use>core_write</use>
</connection>
</前端名称_write>
</resources>


资源安装类一般为mysql4资源下的Setup类,集成于Mage_Core_Model_Resource_Setup


以上是默认常用的配置

转载于:https://www.cnblogs.com/kangkangdede/p/3321117.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值