magento模板文件结构详解
来自: 南国佳木(茶者,南方之嘉木也。) 2015-09-01 23:14:43
模板文件主要分为xml布局文件和html文件
Layout(布局)文件夹存放的是此模板的.xml文件(也就是模版的结构文件),template是.phtml模板文件。
xml文件全部在:app\design\frontend\base\default\layout
phtml文件以及文件夹全部在在:app\design\frontend\base\default\template
– catalog.xml 这个是控制产品列表页和产品详细页的对应于template\catalog 这个文件夹的所有phtml内容。
– catalogsearch.xml 这个是控制搜索的,有模板头部的搜索框,高级搜索,以及搜索结果页面。对应于template\catalogsearch这个文件夹里的所有phtml文件。
– checkout.xml 控制结账相关页面,如购物车页面,购物车在边栏的siderbar,结账流程页面。对应于template\checkout文件中的内容。
– cms.xml 这个既然名字是CMS,所以如果后台的某个cms的static page页面或者自己想自己写个phtml的block想以siderbar的形式出现在模板边栏中,为为甚么不在这个文件中声明下呢。 对应的文件夹template\cms。
– contacts.xml 控制联系我们页面,想改这个页面的结构,从2栏换到1栏,就要修改这个文件了,对应于template\contacts文件夹。
– customer.xml 控制登陆,注册,忘记密码,用户面板页面。用户面板的左侧的链接就是这里添加上的。对应于template\customer文件夹。
– directory.xml控制货币相关内容,默认在左栏显示的货币下拉菜单就是在这个文件控制的,对应于template\directory文件夹。
– downloadable.xml是相关于可下载产品的相关内容,如用户面板页面左栏的链接,可以在这个文件中删掉。对应于template\downloadable。
– newsletter.xml控制订阅邮件的xml,左栏的订阅就是在这个文件控制。对应于template\newsletter文件。
– page.xml这个是很重要的xml,首先他定义了magento默认的页面结构,控制所有页面默认加载的js以及css文件,定义不同页面结构加载 不同的模板文件,等等。对应于template\page,此文件夹页非常重要,包含magento头部,中间部分,底部的模板文件。包含magento 所有页面的基础框架文件。
– poll.xml控制投票在边栏的显示,对应文件template\poll
– reports.xml控制最近查看和比较产品在边栏的显示,对应文件template\reports
– sales.xml 前台订单显示的相关内容,大多是相关于在用户面板页的“我的订单”里的内容。对应文件template\sales
– sendfriend.xml控制产品发送好友共享功能,发送好友页面的结构。对应文件template\sendfriend
– shipping.xml订单运输的相关内容,对应文件template\shipping
– tag.xml控制产品标签的相关内容,用户面板的标签,产品详细页的标签,边栏的标签。对应文件template\tag
– wishlist.xml控制我的收藏相关功能,用户面板的收藏,发送收藏到好友,magento头部的我的收藏的链接也是在这个文件控制的。对应模板文件template\wishlist
这里补充一下,为什么要分这么多文件,每一个文件中基本上都有针对default的操作增加一个块和引用,
一方面是根据每一个大的逻辑功能,将相应的块进行分类,定义出针对自己指定操作所需要增减改的块
二是虽然每一个文件都有针对default进行增加内容,这也可反应出每一个大的功能逻辑所需要的一些默认的功能块
这些xml所定义的是不是都加载到系统进行实例化呢,其实不是,这些xml是都加载,但根据不同的操作,将与些操作相关的块抽取出来,形成指定操作所需的对象,节省资源!
在我们了解布局文件xml与phtml文件内容之前,我们先来看下magento的默认网站结构,我们可以把一个网站页面主要分为5大块,头部(header)、左边栏(left)、中间内容栏(content)、右边栏(right)、底部(footer).
magento模板文件结构详解的更多相关文章
- discuz默认模板文件结构详解-模板文件夹介绍
| — template — default 系统内置风格模板(默认风格)| — template — default – discuz_style_default.xml 风格安装文件,可用 ...
- PE文件结构详解(六)重定位
前面两篇 PE文件结构详解(四)PE导入表 和 PE文件结构详解(五)延迟导入表 介绍了PE文件中比较常用的两种导入方式,不知道大家有没有注意到,在调用导入函数时系统生成的代码是像下面这样的: 在这里 ...
- PE文件结构详解(五)延迟导入表
PE文件结构详解(四)PE导入表讲 了一般的PE导入表,这次我们来看一下另外一种导入表:延迟导入(Delay Import).看名字就知道,这种导入机制导入其他DLL的时机比较“迟”,为什么要迟呢?因 ...
- PE文件结构详解(四)PE导入表
PE文件结构详解(二)可执行文件头的最后展示了一个数组,PE文件结构详解(三)PE导出表中解释了其中第一项的格式,本篇文章来揭示这个数组中的第二项:IMAGE_DIRECTORY_ENTRY_IMPO ...
- PE文件结构详解(三)PE导出表
上篇文章 PE文件结构详解(二)可执行文件头 的结尾出现了一个大数组,这个数组中的每一项都是一个特定的结构,通过函数获取数组中的项可以用RtlImageDirectoryEntryToData函数,D ...
- PE文件结构详解(二)可执行文件头
在PE文件结构详解(一)基本概念里,解释了一些PE文件的一些基本概念,从这篇开始,将详细讲解PE文件中的重要结构. 了解一个文件的格式,最应该首先了解的就是这个文件的文件头的含义,因为几乎所有的文件格 ...
- 【转】Eclipse Java注释模板设置详解
Eclipse Java注释模板设置详解 设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后 ...
- 【转载】 Eclipse注释模板设置详解
Eclipse注释模板设置详解 网站推荐: 金丝燕网(主要内容是 Java 相关) 木秀林网(主要内容是消息队列)
- Java类文件结构详解
概述: Class文件结构是了解虚拟机的重要基础之一,如果想深入的了解虚拟机,Class文件结构是不能不了解的.Class文件是一组以8位字节为基础单位的二进制流,各项数据项目严格按照顺序紧凑地排列在 ...
随机推荐
- 【转载】Linux常用命令列表
原文地址:http://www.cnblogs.com/Javame/p/3968343.html 1 目录与文件操作 1.1 ls(初级) 使用权限:所有人 功能 : 显示指定工作目录下之内容(列出 ...
- 转债---Pregel: A System for Large-Scale Graph Processing(译)
转载:http://duanple.blog.163.com/blog/static/70971767201281610126277/ 作者:Grzegorz Malewicz, Matthew ...
- WSDL项目---处理消息
有几个视图选择在处理SOAP请求和响应消息. 让我们看看这两个. 请求消息 XML ——标准的底层XML消息的文本视图Validate选项验证当前的消息发现的错误: (这里行号一直在编辑器中打开) ...
- 【转】java-String中的 intern()
转自:http://blog.sina.com.cn/s/blog_69dcd5ed0101171h.html 1. 首先String不属于8种基本数据类型,String是一个对象. 因为对象的默认值 ...
- JavaScript使用接口
在经典的Java面向对象语言中,可以用关键字interface来定义接口,用implement来实现接口,而JavaScript虽然也是面向对象语言,但是它并没有内置这些,不过由于JavaScript ...
- Mac下各种网络命令的使用
Mac下各种网络命令的使用(http://blog.51yip.com/linux/745.html) pingwww.baidu.com 会一直ping下去,和windows不一样, windows ...
- 解决Windows Server2008R2中导入Excel不能使用Jet 4.0
操作系统使用了Windows Server2008R2(Windows Server2008R2是64位系统,同时配置IIS7.0 原读取Excel文件代码为: string strConn = st ...
- win7 64 安装mysql-python:_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory
今天想在在win7 64位环境下使用python 操作mysql 在安装MySQL-python 时报错: _mysql.c _mysql.c(42) : fatal error C1083: Can ...
- iOS tableview删除多余的空cell
self.tableview.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero]; 加一句这个,然后给tableview一个背景色, ...
- C#中的简单工厂和单例
下面首先来说说简单工厂 举个例子: 首先是父类 public abstract class Pizza { public abstract string Info(); } } 子类 public c ...