在我们的 Magento 商店中,我们提供两种产品,每种产品都有自己的根类别。我想将 CMS 静态块添加为产品详细信息页面上的自定义选项卡,具体取决于产品所属的类别。
我知道如何在view.phtml
模板中创建选项卡,但我怎样才能做到:
- 块 1出现在根类别 1下的产品详细信息页面上
- 块 2出现在根类别 2下的产品详细信息页面上
我认为通过 XML 布局更新可以删除和附加选项卡,但是如何将块附加到布局中?
在我们的 Magento 商店中,我们提供两种产品,每种产品都有自己的根类别。我想将 CMS 静态块添加为产品详细信息页面上的自定义选项卡,具体取决于产品所属的类别。
我知道如何在view.phtml
模板中创建选项卡,但我怎样才能做到:
我认为通过 XML 布局更新可以删除和附加选项卡,但是如何将块附加到布局中?
如果我正确理解您的问题,您希望在查看您的两个特殊类别(类别 1 和类别 2)下的产品时在产品详细信息页面上添加一个自定义选项卡。
产品详细信息页面上的选项卡是catalog/product_view_tabs
通常映射到类的类型Mage_Catalog_Block_Product_View_Tabs
。此块确实提供了一种通过其方法添加新选项卡的addTab()
方法,但似乎此方法假定将使用模板,不幸的是,这阻止了通过此方法使用 CMS 静态块。
如果您能够将两个静态块中的内容改为两个模板文件,则可以使用类别本身的布局 XML 更新来做到这一点。我将概述您将在这种情况下使用的过程:
<reference name="content">
<reference name="product.info.tabs">
<action method="addTab" translate="title">
<alias>block1</alias>
<title>Block 1</title>
<block>core/template</block>
<template>catalog/product/view/block1.phtml</template>
</action>
</reference>
</reference>
它应该看起来像这样:
然后对 category2 重复相同的步骤。这个解决方案的关键是让你的两个模板文件block1.phtml
进入block2.phtml
路径:app/design/frontend/base/default/template/catalog/product/view/
.