magento结构和原理
magento结构和原理 magento结构和原理是magento框架的核心组成部分,了解magento的结构和原理是开发magento模块和主题的基础。本文将详细介绍magento的文件目录结构、URL路由与分发器、模板调用对应的JS、CSS、图片、重写核心模块等知识点。 文件目录结构 magento的文件目录结构如下所示: * app:应用程序目录 + code:代码目录 - core:核心模块目录 - local:本地模块目录 + design:设计目录 - frontend:前端设计目录 - adminhtml:后端设计目录 + etc:配置文件目录 * skin:皮肤目录 + frontend:前端皮肤目录 + adminhtml:后端皮肤目录 URL路由与分发器 magento采用单入口文件模式,根据不同参数调用相应的模块。例如,http://127.0.0.1/index.php/customer/account/login地址将经过以下步骤: 1. 首先接收customer参数,根据该参数查找到app/code/core/mage/customer模块。 2.接着查找第二个account参数,我们继续在customer模块下查找。 3.接着查找第三个login参数,系统会调用customer模块下的controller/AccountController.php文件的loginAction方法。 模板调用对应的JS、CSS、图片 模板是如何加载这些文件的呢?JS和CSS文件是通过app/design/frontend/default/你的主题/layout/page.xml文件加载的。当然也可以直接写到模板文件里。加载的JS和CSS目录放在/skin/frontend/default/你的主题/下。如果不存在该目录,会向/skin/frontend/base/default/目录查找。跟模板的继承机制是一样。 重写核心模块 如果你要修改app/code/core/mage/customer/controller/AccountController.php文件。可以复制AccountController.php这个文件放到app/code/local/Company/customer/controller/AccountController.php。然后重写controller类require_once “Mage/Checkout/controllers/OnepageController.php”;class Company_Xcheckout_OnepageController extends Mage_Checkout_OnepageController{//do what you want//尽情发挥吧} magento模块开发实例 magento扩展开发的概念相对统一,名称叫Module。从访问入口看,Magento扩展一般有两种展现形式: 1. 作为一个完整的页面,从浏览器地址栏访问新增的模块。 2. 作为页面的一个片段,插接到现已存在的网页上。 下面的例子描述的第一种方式扩展出来的模块。假设公司名称为Cartz,现在要为该公司编写一个旅馆预订的模块。步骤I:建立模块目录及文件结构骨架。 目录结构: 【Magento】 app- etc/ modules/ Cartz_Hotel.xml code/ local/ Cartz/ Hotel/ controllers/ MyController.php etc/ 了解magento的结构和原理是开发magento模块和主题的基础。通过了解magento的文件目录结构、URL路由与分发器、模板调用对应的JS、CSS、图片、重写核心模块等知识点,可以更好地理解magento的工作机理和开发magento模块和主题。
- jbhuang2015-10-14the book is complicated.
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于C语言的系统服务框架.zip
- (源码)基于Spring MVC和MyBatis的选课管理系统.zip
- (源码)基于ArcEngine的GIS数据处理系统.zip
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip