我试图在前端产品页面上创建一个单独的产品信息选项卡,其中将包括交付信息。该信息将根据产品(属性)的制造商而有所不同
我在想的东西沿着一行if else语句,但我不确定这是实现这一点的最佳方式。
欢迎有任何想法/建议。
很多谢谢,马克。
要为产品详细信息添加新选项卡,您只需要为另一个块调用"addToParentGroup",因此,例如:
<catalog_product_view>
<reference name="product.info">
<block type="xxx/manufactuer" name="product.manufacture.details" as="manufacture_details" template="xxxx.phtml">
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="setTitle"><title>Tab Title</title></action>
</block>
</reference>
</catalog_product_view>
另一个想法,这将是非常类似的方式,magento Handel不同类型的产品,并允许你有充分的自由,当设计标签。如果你看一下catalog.xml
,你会发现这样的部分:
<PRODUCT_TYPE_grouped>
...
</PRODUCT_TYPE_grouped>
<PRODUCT_TYPE_virtual>
...
</PRODUCT_TYPE_virtual>
我猜你的制造商列表是安静的修复或至少那些自定义布局,你可以尝试这样的东西。
例如
<MANUFACTURER_XXX>
<block type="xxx/manufactuer" name="product.manufacture.details" as="manufacture_details" template="xxxx.phtml">
<action method="addToParentGroup"><group>detailed_info</group></action>
</block>
</MANUFACTURER_XXX>
<MANUFACTURER_YYYY>
...
</MANUFACTURER_YYYY>
然后订阅一个新的事件观察者,例如事件'catalog_controller_product_view',并添加一个新创建的布局处理程序,如果不匹配,可能是默认的。
这将是一个非常通用的方法,你甚至可以选择创建复杂的制造商选项卡。
希望这是你的起点
<catalog_product_view>
<block type="manufacturer/manufacturer_info" name="manuf.description" as="manu_info" template="manufacturer/info.phtml">
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="setTitle" translate="value"><value>Title</value></action>
</block>
</catalog_product_view>
您可以使用