magento文件分析,BLOCK应用
/app/etc - 全局配置文件目录
/app/code - 所有模块安装其模型和控制器的目录
/app/code/core - 核心代码或经过认证得模块,如果要升级不要这里的代码
/app/code/community - 社区版的模块目录
/app/code/local - 定制代码目录
/app/code/core/Mage? - magento默认命名空间
/app/code/core/Mage?/{Module} - 模块根目录
/app/code/core/Mage?/{Module}/etc - 模块的配置文件目录
/app/code/core/Mage?/{Module}/controllers - 模块的控制器
/app/code/core/Mage?/{Module}/Block? - 显示块的逻辑类
/app/code/core/Mage?/{Module}/Model? - 模块的对象模型
/app/code/core/Mage?/{Module}/Model/Mysql4? - 模块的资源模型
/app/code/core/Mage?/{Module}/sql - 模块各个版本的安装和升级用sql
/app/code/core/Mage?/{Module}/sql/{resource}/- 升级是需要的资源模型
/app/code/core/Mage?/{Module}/sql/{resource}/{type}-{action}-{versions}.(sql|php) - 资源升级文件 例如: mysql4-upgrade-0.6.23-0.6.25.sql
/app/design - 设计包目录 (layouts, templates, translations)
/app/design/frontend - 前端的设计
/app/design/adminhtml - 后台管理设计
/app/design/{area}/{package}/{theme} - 定制的主题
/app/design/{area}/{package}/{theme}/layout - 定义显示块的 .xml 文件
/app/design/{area}/{package}/{theme}/template - .phtml (html with php tags)模版
/app/design/{area}/{package}/{theme}/locale - Zend_Translate 兼容的主题用的文字翻译
/app/locale - 本地化文件
/app/locale/{locale (en_US)} - Zend_Translate 兼容的模块用的文字翻译
/skin/{area}/{package}/{theme}/- css和图像
/lib - 公用库
/js - javascripts
/media - 上传文件存放目录
/tests - 测试目录
/var - 临时文件目录
控制器的开发使用说明。。。。。。
Magento扩展开发的概念相对统一,名称叫Module. 从访问入口看,Magento扩展一般有两种展现形式: 1. 作为一个完整的页面,从浏览器地址栏访问新增的模块。 2. 作为页面的一个片段,插接到现已存在的网页上。 下面的例子描述的第一种方式扩展出来的模块。 案例假设公司名称为Cartz, 现在要为该公司编写一个旅馆预订的模块。步骤 I: 建立模块目录及文件结构骨架。 目录结构
- 代码: 全选
-
de>【Magento】 app - etc/ - modules/ Cartz_Hotel.xml - co de/ - local/ - Cartz/ - Hotel/ - controllers MyController.php - etc config.xml de>
- 代码: 全选
-
de><config> <modules> <Cartz_Hotel> <active>true</active> <codePool>local</codePool> <version>0.1.0</version> </Cartz_Hotel> </modules> </config> de>
- 代码: 全选
-
de><?php class Cartz_Hotel_MyController extends Mage_Core_Controller_Front_Act ion{ public function helloAction() { echo "My First Module"; } } de>
- 代码: 全选
-
de><?xml version="1.0"?> <config> <modules> <Cartz_Hotel> <version>0.1.0</version> </Cartz_Hotel> </modules> <frontend> <routers> <hotel> <use>standard</use> <args> <module>Cartz_Hotel</module> <frontName>hotel</frontName> </args> </hotel> </routers> </frontend> </config> de>