magento显示模式在catalog.xml中有条件吗?

rip*_*tor 5 xml conditional catalog magento

有谁知道如何在magento的catalog.xml中有条件地添加或设置显示模式?

如果您在后端编辑类别,则在“显示设置”标签下有一个“显示模式”下拉列表,您可以在其中选择“仅静态块”。这实际上将您的类别页面变成了常规内容页面,问题是该页面仍继承了您在catalog.xml中为常规类别页面设置的所有内容,并且如果显示模式为“仅静态块”,我想取消所有设置。

在/template/catalog/category/view.phtml中,最接近的ive是这个条件

if($this->isContentMode()):
    echo $this->getCmsBlockHtml()
Run Code Online (Sandbox Code Playgroud)

以及catalog.xml中的某些特定于产品的条件

<!--
Additional block dependant on product type
-->
PRODUCT_TYPE_simple
PRODUCT_TYPE_configurable
etc...
Run Code Online (Sandbox Code Playgroud)

请帮忙!

Mar*_*ius 0

您可以Mage_Catalog_CategoryController::viewAction()在调用之前重写该方法

$this->generateLayoutXml()->generateLayoutBlocks(); 
Run Code Online (Sandbox Code Playgroud)

您可以根据类别设置添加不同的布局手柄。您可以从这些布局句柄中删除块或添加新块。