1

我是 magento 的新手,我在模板 xml 文件中看到如下代码。

<reference name="top.menu">
    <block type="catalog/navigation" name="catalog.topnav" template="catalog/navigation/top.phtml"/>
</reference>

引用和块部分中的名称部分是什么意思?它们之间有什么区别吗?块部分的类型部分是什么意思?如果我想使用自己的类型和名称,我该怎么做?它们有什么用?谢谢你。

4

1 回答 1

2

名称是调用它以供以后使用的方式。您可以在 phtml 中调用您的块来呈现它:

echo $this->getChildHtml('yourname');

您也可以在引用中使用名称,如果您想在另一个布局中更改此块,您将引用此布局,这要归功于它的名称

<reference name="yourname">
      YOUR CHANGES HERE
</reference>

正如您可能已经理解的那样,reference 是您的更改将影响的块的名称。例如,如果在我的结帐中我想更改名为“right”的块以添加一个内部块:

<checkout_cart_index>
     <reference name="right">
          <block type="core/template" name="yourname" template="yourtemplate.phtml" />
     </reference>
</checkout_cart_index>

最后是类型,它是块文件的路径(模块目录下的 php 文件)。

示例 type="catalog/navigation" 指的是 app/code/core/Mage/ Catalog/Block/ Navigation.php 如果 Navigation.php 文件位于名为 Menu 的子文件夹中,则名称为 module/path_to_block 示例,您将拥有 type="catalog /menu_navigation"

于 2013-03-09T10:35:42.737 回答