php – Magento布局用另一个块替换块
我想用一个自定义类型块替换标准布局catalog.xml中的块.
我想用下面我自己的自定义块类型替换上面的标准,但使用相同的“名称”.
有人可以告诉我最好的方法吗?我不知道要使用的XML操作和方法.我需要删除上一个块吗? unsetChild?如果我添加一个具有相同“名称”和相同父级的块,将覆盖现有的具有相同名称的块吗? 解决方法: 我会在这里经历你们的每一个疑问. 1.我是否可以用我的自定义块替换默认块,如上所示? 当然可以.您可以使用自己的块而不是默认块与上面的代码 2.最好的方法是什么? 为此,我更喜欢使用local.xml. local.xml是一个特殊的布局文件,最终将由Magento处理.也就是说,在查询了所有其他布局更新文件之后,通过此文件指定的布局更新将最终考虑并应用.所以这是改变任何布局变化的简单方法.因此,请在主题的布局目录中包含此文件,并指定布局更改. 文件:app / design / frontend /< package> /< theme> /layout/local.xml
我们的local.xml保存的布局非常简单.首先,它从布局结构中删除默认块.为了使用它,我们使用了删除节点.然后我们将自己的块添加到内容部分. 这里重要的是你的块应该在后端定义.如果没有定义,Magento将不会理解你引用它的哪个块,因此,magneto不会渲染块内的内容.所以确保它在后端定义.在上面的例子中,为了正确处理你的块,Magento需要在app / code / local / Namespace / Modulename / Block / Groupview.PHP(其中Namespace_Modulename代表你的自定义模块名称)中定义Namespace_Modulename_Block_Groupview. 3.如果我添加一个具有相同“名称”和相同父级的块,将覆盖现有的具有相同名称的块吗? 当然,您可以给出块默认块的名称.在magento中,每个块都应该有一个唯一的名称.为了遵守此规则,我们需要先删除默认块.这将允许我们在我们自己的块中使用该块名称.否则Magento会表现得很糟糕. 注意:有两个操作适用于您的块.它们是addToParentGroup和setTitle.第一个将您的块设置为detailed_info组,第二个用于设置块的标题. (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |