`
shuishui8310
  • 浏览: 155233 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

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-中文开发教程(技术重点2)

    自定义块可以在布局文件中引用,从而在页面上显示特定的内容或功能。 #### Magento 模型和 ORM 基础 Magento 的模型层负责处理数据操作和业务逻辑。它采用了 ORM(对象关系映射)技术,使得数据操作更加简洁高效。...

    magento中block应用

    在Magento的布局XML文件中,通过`&lt;referenceContainer&gt;`或`&lt;referenceBlock&gt;`标签来添加、删除或修改Block。例如,添加一个Block: ```xml &lt;block class="Namespace\Module\Block\Example" name="example_block...

    Magento-Blog:一个简单的Magento 2博客

    这些模板使用 PHP 语法和 Magento 2 的模板引擎,结合 Block 类中的方法来动态渲染内容。 6. **依赖注入**:Magento 2 鼓励使用依赖注入(Dependency Injection)设计模式,这使得代码更易于测试和维护。在博客模块...

    magento模板中XML与phtml关系

    Magento 模板系统是其强大和可...了解并熟练掌握XML和pHTML的关系,对于在Magento环境中高效工作至关重要,无论是进行定制开发还是进行模板调整。正确使用这两者,可以帮助创建出功能丰富、视觉吸引人的电子商务网站。

    magento footer no cache,不缓存页面底部footer部分

    1. **禁用布局更新缓存**:在Magento的后台管理系统中,可以禁用特定的布局更新缓存。这将使得每次请求都重新生成footer部分,但请注意,这可能会对整体性能产生影响。 2. **使用动态块**:创建一个动态块(Block)...

    magento模板开发图文教程

    - 布局模板定义了页面的布局结构,包括区块(Block)的定义、布局更新等。 **4.12 CSS和JS文件** - CSS和JS文件负责页面的样式和交互逻辑,通常存放在皮肤目录下的相应文件夹中。 综上所述,Magento模板开发涉及到...

    magento学习重点

    例如,`header` Block在`page.xml`布局文件中被定义,然后在页面模板文件(如`1column.phtml`)中通过`getChildHtml('header')`函数调用来显示。每个Block类型由特定的类实现,如`Mage_Page_Block_Html_Header`,...

    II. Magento扩展使用模板文件

    在Magento中,扩展通常由模块(Module)构成,每个模块负责特定的功能。模块由多个组件组成,如控制器(Controller)、模型(Model)、视图(View)和块(Block)。模板文件属于视图层,主要负责页面的布局和显示。 ...

    prophet-magento-test-module:为 linusshopsprophet 提供示例模块

    "linusshops/prophet" 可能是 Magento 社区中的一个开源项目或者商业解决方案,这个测试模块的目的是为了展示如何在实际环境中应用或扩展该项目。 【标签解析】 "PHP" 标签表明这个模块是用 PHP 编程语言开发的。...

    Magento模板制作教程1..doc

    Magento的一个强大特性是能够在块中嵌套其他块,这使得页面结构变得更加灵活和可定制。 - **实现方式**:通过`getChildHtml`方法实现。这个方法允许在一个块中调用另一个块的内容,从而形成多级嵌套。 - 示例代码:...

    Magento 添加后台管理 addColumn

    - 如果新添加的功能需要特定角色权限才能访问,记得在Adminhtml的Role或Resource XML中进行设置。 9. **最后的调试和优化**: - 完成以上步骤后,进行功能测试,确保新列正常显示且数据正确。同时,注意代码优化...

    magento-tooltip:Magento 属性的示例工具提示模块

    在 Magento 的 XML 文件系统中,工具提示的配置通常涉及到 layout 更新、模板修改以及可能的事件观察器。这个模块可能包含了以下关键组件: 1. **Module结构**:一个Magento模块通常包含`app/code`目录下的Vendor/...

    Magento-Local-XML-Boilerplate

    Magento是一款强大的开源电子商务平台,它的灵活性和可扩展性深受开发者喜爱。"Magento Local XML ...在实际开发过程中,结合这个模板和其他Magento开发工具,可以提升工作效率,保证项目的稳定性和可维护性。

    magento-custom-payment-method:在Magento中创建基本的付款方式

    在Magento中,自定义支付方法是提高商店用户体验和满足特定业务需求的关键步骤。本文将深入探讨如何在Magento中创建一个基本的自定义支付方式。 首先,我们需要理解Magento支付模块的基本结构。每个支付方法在...

    magento-adminhtml-customer-address-allow-deselect:存储库包含模块的源文件,允许用户在新客户创建过程中编辑地址字段时取消选择单选按钮

    在这个特定的场景中,我们关注的是“magento-adminhtml-customer-address-allow-deselect”模块,它旨在改进新客户创建过程中地址编辑的用户体验。 这个模块的核心功能是允许用户在输入地址信息时取消选择单选按钮...

    magento处理不同的头部header

    在Magento中,页面由多个区域(Block)组成,每个区域可以有自己的模板文件(Template)。头部Header通常由一个或多个这样的区域构成,例如顶部菜单(Top Menu)就是一个常见的Header区域。模板文件通常位于`app/...

    magento入门文档

    在Magento中,通过合理地使用Block和Layout,可以轻松地构建出复杂的页面布局,并且能够方便地维护和扩展。 #### 四、Magento的模型和ORM基础 **4.1 传统的PHPMVC架构中的模型** 在传统的PHP MVC架构中,模型负责...

Global site tag (gtag.js) - Google Analytics