【发布时间】:2013-09-29 18:54:25
【问题描述】:
以我为例:
<block type="core/template" name="my.name" as="myName" template="path/to/template.phtml"/>
“as=myName”声明的用途是什么。 什么抽象类为布局处理定义了这些默认属性?
【问题讨论】:
标签: magento
以我为例:
<block type="core/template" name="my.name" as="myName" template="path/to/template.phtml"/>
“as=myName”声明的用途是什么。 什么抽象类为布局处理定义了这些默认属性?
【问题讨论】:
标签: magento
这里我可以简要了解一下magento block xml标签
name = 块的名称。它在页面中应该是唯一的。
**as = 别名**。较小的名称形式。它在其父块中应该是唯一的。
template = 此块附加到的模板文件(视图)。
您可以使用 $this 来调用 this 内部块类型的方法。例如$this->getName()
名称与示例:
<reference name="left">
<block type="block/blocktype1" name="first_block" template="template1.phtml">
<block type="abc/abc" name="ty1" as="common" template="abc.phtml"/>
</block>
<block type="block/blocktype1" name="second_block" template="template2.phtml">
<block type="xyz/xyz" name="ty2" as="common" template="xyz.phtml"/>
</block>
</reference>
因此,您现在可以将块名称 ty1 from first_block 和 ty2 from second_block 称为 $this->getChildHtml('common');,但是看到两个被调用的块将根据它们的调用父级而有所不同。
对于细节类去扔这个
Understanding Magento Block and Block Type
希望这对你有帮助。
【讨论】:
使用as时,可以在phtml模板上调用$this->getChildHtml("as_value")。
名称必须唯一,可用于
例如(catalog.xml):
<block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
<block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>
【讨论】: