我有一个定制模板块(phtml),定义如下:
<block type="catalog/product" name="a.unique.name" template="dir/dir/customlist.phtml"/>
在此块中的CMS主页中定义
<reference name="left">
但是,如果我将其移动到标题栏,则不会出现
<reference name="header">
我在这里缺少什么?
** ----另外-----
我按照D. Sloof的建议尝试了这个,但它不起作用。 (由于我的错误行为而不是他的解释,我怀疑更多。)
我添加了getChildHtml(&#39; customlist&#39;); ?&GT;到
mytheme\template\page\html\header.phtml
在div&#34; top-col-1&#34;
之下 <div class="wrapper">
<div class="top-col-1">
<?php echo $this->getChildHtml('customlist'); ?>
其中&#34; customlist&#34;可以在
中找到mytheme/template/dir/dir/customlist.phtml
我做错了什么?
答案 0 :(得分:2)
得到它......
在xml文件中阻止名称 a.unique.name
<block type="catalog/product" name="a.unique.name" template="dir/dir/customlist.phtml"/>
必须与mytheme \ template \ page \ html \ header.phtml
中调用的内容相匹配<?php echo $this->getChildHtml('a.unique.name'); ?>
答案 1 :(得分:0)
header
块的类型为Mage_Page_Block_Html_Header
,不会自动呈现子块。您可以查看模板文件page/html/header.phtml
如何检索子块html。
你基本上有两个选择:
getChildHtml
调用(通过将其复制到您自己的主题),或者; left
块的类型为Mage_Core_Block_Text_List
,它将执行此操作。名为header
的{{1}}块中有一个类似的块top.container
,它也会执行此操作:您可以引用此块。