我正在尝试将包含特色商品的自定义文件放在Magento商店的类别页面上的主要产品列表下。
我编辑了catalog.xml以包含:
<block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
<block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
...
</block>
<block type="catalog/product" name="featuredcat" as="featuredcat" template="customphp/featured-cat.phtml"/>
</block>
featuredcat.phtml包含一个循环,用于查找已选择自定义属性(精选)的产品。这很可爱,已经在侧边栏了。
然后我添加:
echo $this->getChildHtml('featuredcat')
到我的catalog / category / view.phtml文件的底部。但没有渲染。我本可以发誓这是正确的。谁能解释我做错了什么?
干杯。
答案 0 :(得分:3)
您提供的布局xml将featuredcat
块直接附加到product_list
块。因此,您必须在getChildHtml
内而不是catalog/product/list.phtml
内致电catalog/category/view.phtml
。
因此,您可以按照上述说明将getChildHtml
调用移至正确的模板,或者将featuredcat
阻止升级:
<block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
<block type="catalog/product" name="featuredcat" as="featuredcat" template="customphp/featured-cat.phtml"/>
<block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
...
</block>
</block>
或者您可以按原样保留布局xml并使用getChildChildHtml :) - 但我确定更改布局是更好的选择 -
<?php echo $this->getChildChildHtml('product_list', 'featuredcat') ?>