首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

定做Magento模板

2012-11-05 
定制Magento模板模板定制有两个原则:1.修改现有的模板文件。2. 扩展新的模板文件显然,第一种方式是不推荐的

定制Magento模板
模板定制有两个原则:

1.修改现有的模板文件。
2. 扩展新的模板文件

显然,第一种方式是不推荐的,扩展现有的模板使你的程序更加模块化。

下面讨论的方式都是基于第二种原则。扩展模板的基本思路是在合适的地方改变http请求的入口。如:
请求 http://mangeto_server/catalog/category/view/id/6
执行过程如下:


上面的代码将和Mage_Core内置的catalog_category_default定义共同对该页面请求生效。但是上面的代码由于使用了
<remove name="category.products" />

则移除了原来Block Type为catalog/category_view(对应的名字为category.products)的定义。然后重新定义了Type为 catalog/category_view的Block的Template属性指向,为了使新定义的Block生效,请注意:name属性必须不能和原来的名字category.products不一样,这里为joymami_category.products

2. 在template目录下建立catalogue/category/series.phtml文件,里面定义自己的html显示。

重新运行
http://mangeto_server/catalog/category/view/id/6

看看是否发生了变化:)

II.重写(rewrite) Block入口类
这种定制使用的情况是:如果你想在模板文件中输出更多的动态数据,而原来的Block类不足以提供这些数据,那么就需要重写(rewrite)这个 Block类,在Block类中用API改变(相对于layout文件配置改变)Template文件指向。请看另一篇帖子对这种方法的解释

III.改变原来的入口 重写(rewrite) Block入口类
严格说,这种方法不是本文讨论的范畴,因为改变了入口,意味着你抛弃了原来的一切(Controller,Model,Template), 是全新的Module.请看本论坛内如何定制Module的文章

热点排行