2

以我为例:

<block type="core/template" name="my.name" as="myName" template="path/to/template.phtml"/>

“as=myName”声明的用途是什么。什么抽象类为布局处理定义了这些默认属性?

4

2 回答 2

3

在这里我可以简要了解一下magento block xml标签

name =块的名称。它在页面中应该是唯一的。

**as = 别名**。较小的名称形式。它在它的父块中应该是唯一的。

template = 此块附加到的模板文件(视图)。

您可以使用 $this.. 例如 $this->getName() 从 this 内部的块类型调用方法

名称与示例:

<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>

因此,您现在可以调用 block name ty1 from first_blockAND ty2 from second_blockas $this->getChildHtml('common');,但是看到两个被调用的块将根据它们的调用父级而有所不同。

对于细节课去扔这个

了解 Magento 块和块类型

希望这对你有帮助。

于 2013-09-24T14:26:08.283 回答
1

当你使用as时,你可以在 phtml 模板上调用$this->getChildHtml("as_value") 。

名称必须唯一,可用于<reference>块、<remove>等。

例如(目录.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"/>

于 2016-08-25T07:12:04.420 回答