所以我试图在一个块中显示一个自定义的list.phtml文件。 多数民众赞成我能够显示所有类别为id 6的产品。
{{block type="catalog/product_list" category_id="6" template="catalog/product/list.phtml"}}
以上工作正常。但是现在我想要访问类别id 6的名称,我将如何从list.phtml中或甚至在不同的块中执行此操作。我只需要id = 6的类别名称。
答案 0 :(得分:39)
在list.phtml块模板中,您可以使用
获取类别名称
<?php echo $this->getLayer()->getCurrentCategory()->getName() ?>
在这种情况下,当前类别由catalog/product_list
调用中的_getProductCollection()
块在图层上设置。
在CMS页面内容中,我无法直接访问类别名称
从不同的块获取类别名称可能更复杂。你可以试试
<?php echo Mage::getSingleton('catalog/layer')->getCurrentCategory()->getName() ?>
当然可能的情况是,层实例上可能没有设置当前类别,因此请务必检查以避免出现难看的错误。
基本上,如果已执行catalog/product_list
产品列表块的_beforeToHtml()
方法,则将在图层上设置当前类别。
修改强> 所有这一切都假设您想要获取类别名称而不再指定类别ID。如果您不关心,您可以随时获取类别名称
<?php echo Mage::getModel('catalog/category')->load($this->getCategoryId())->getName() ?>