magento模板中XML与phtml关系(四)

magento模板中XML与phtml关系(四)
magento模板中XML与phtml关系(四)

我们来看看magento模板文件的XML与phtml文件以及文件结构。我突然觉得有必要说下,我将对大多数的xml文件以及phtml文件的作用做下讲解。

本次讲解使用magento1.4,模板使用base中default模板。

我们对应着XML文件和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

简简单单的说了一遍,打开每个xml文件,看一下,基本就知道是在控制什么内容了。大家需要对各个文件有所了解。

转载标明出处:hellokeykey.com

《magento模板中XML与phtml关系(四)》有11个想法

  1. 大哥,这个标题请改成magento模板中XML与phtml关系(0)
    从一到三都感觉模糊,仔细研究了4,忽然间顿悟了,求改名,顺序紊乱啊。

  2. 您好~!钥匙,

    appdesignfrontenddefault 总共有好几个目录,我理解是主题,这个主题文件是干什么,就是改变页面CSS样式的作用吗?

    iphone 和 modern 2个目录下多了 layout 和 template 目录 ,我理解,如果appdesignfrontenddefault主题名 目录下有layout和template这2个目录的话,就直接调用这2个目录下的XML和PHTML文件,如果没有的话,就调用 base 下面的XML和PHTML文件件,这样对吗?

评论已关闭。