我是Magento的新手。我有个问题。我按照本网站上的指南配置
<layout version="0.1.0">
<default>
<block type="page/html" name="root" output="toHtml" template="magentotutorial/helloworld/simple_page.phtml" />
</default>
</layout>
但它不起作用。但我将<default>
修复为<helloworld_index_index>
,它会运行。
我不明白这个问题。什么是不同的?
答案 0 :(得分:0)
<default>
和<helloworld_index_index>
被称为&#34;布局句柄&#34;。
如果您在主题或默认主题的布局文件夹中学习page.xml
文件,您会发现<default>
布局句柄已经分配了&#34;块元素&#34;名称root
。因此,在同一布局句柄中再次定义root
Block元素对magento没有任何意义。
如果你想在同一个布局句柄中使用相同的Block元素,那么你应该使用块元素类型<reference>
引用,如下所示:
<layout version="0.1.0">
<default>
<reference name="root">
<!-- Your changes here -->
</reference>
</default>
</layout>
无论如何,<helloworld_index_index>
布局句柄对您有用,因为它没有在布局xml文件中的其他位置分配块元素root
。