我已经使用示例数据安装了magento 1.9.0.1。 尝试通过我的模块布局xml更新布局,将额外的选项卡添加到产品页面。 我的模块的xml中添加了以下更改,但它不起作用 - 这意味着我的标签没有添加到产品页面。
<catalog_product_view>
<reference name="product.info">
<block type="catalog/product_view_tabs" name="product.info.tabs" as="info_tabs" template="catalog/product/view/tabs.phtml">
<action method="addTab" translate="title" module="catalog">
<alias>Discussions</alias><title>Product Discussions</title>
<block>discussions/discussions</block>
<template>discussions/discussions.phtml</template></action>
</block>
</reference>
</catalog_product_view>
当我查看默认的catalog.xml(app / design / frontend / base / default / layout / catalog.xml)时,我没有看到任何标签块元素,但当我浏览到产品页面时#& 39;重新设置描述,附加信息和评论的默认选项卡。想要找到可以配置但没有成功的其他地方。
答案 0 :(得分:6)
感谢您的时间和意见。我找到了问题的根本原因。
1.Magento 1.9.0.1更改了默认包
Magento 1.9.0.1将默认包更改为rwd(响应式Web设计),因此我在app / design / frontend / base / default / layout / catalog.xml下所做的所有更改都与rwd包无关。
2.Magento使用tab类来呈现&#34; detailed_info&#34;元素
在app / design / frontend / rwd / default / template / catalog / product / view.phtml下面的代码负责显示&#34; detailed_info&#34;元素
<div class="product-collateral toggle-content tabs">
<?php if ($detailedInfoGroup = $this->getChildGroup('detailed_info', 'getChildHtml')):?>
<dl id="collateral-tabs" class="collateral-tabs">
<?php foreach ($detailedInfoGroup as $alias => $html):?>
<dt class="tab"><span><?php echo $this->escapeHtml($this->getChildData($alias, 'title')) ?></span></dt>
<dd class="tab-container">
<div class="tab-content"><?php echo $html ?></div>
</dd>
<?php endforeach;?>
</dl>
<?php endif; ?>
</div>
3.如何在产品页面添加其他标签?
因此,为了向产品页面添加其他标签,只需将其标记为detailed_info,请参阅我的示例:
<catalog_product_view>
<reference name="product.info">
<block type="discussions/discussions" name="product.discussions" as="discussions" template="discussions/discussions.phtml">
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="setTitle" translate="value"><value>Product Discussions</value></action>
</block>
</reference>
</catalog_product_view>