magento -- 如何修改block在某个特定页面中的模板

在magento中如何修改block某个特定页面的样式,甚至功能呢?这个应用应该是很广泛的。同样的一个block,要想在某个特定的页面,如产品显示页面,让它的内容,样式不一样,如何实现?

很简单,magento超强的xml配置功能,可以轻松搞定。以logo block为例,如果我想让cms首页的logo显示不一样,使用不同的模板,可以这样做:

 

在page.xml中,添加:

 

<cms_index_index>
        
        <reference name="header">
            <action method="unsetChild"><name>logo</name></action>
            <block type="page/html_header" name="logo" as="logo" template="page/html/logo-home.phtml"/>
        </reference>

    </cms_index_index>

 

这段xml配置是很清楚的,简单说明一下,cms_index_index说明了我们要对哪个页面进行修改,其次,header是我们所要修改的logo block原先所在的父block,unsetChild action则是删除掉原先的logo block设置,接下来则是重新定义这个block,很明显,我们不但可以是简单的换个模板,甚至可以通过修改type参数来调用其它的block。

 

出处:http://blog.csdn.net/xinhaozheng/archive/2010/01/28/5267483.aspx

上一篇:Magento开发手册中文版第二章


下一篇:电子商务类站点终极资源大全