我正在使用Magento Enterprise 1.12,并希望将自定义标签(投放,视频)添加到产品视图页面,其中包含从产品属性指定的内容。初始化选项卡的脚本如下:
//<![CDATA[
var collateralTabs = new Enterprise.Tabs('collateral-tabs');
Event.observe(window, 'load', function() {
collateralTabs.select();
});
//]]>
除了创建产品属性之外,我不确定从哪里开始,所以任何帮助都会非常感激!
亲切的问候
答案 0 :(得分:4)
Enterprise中的选项卡的处理方式与社区不同,这可能会导致尝试查找解决方案时遇到问题。在catalog.xml中,您将找到使用以下代码设置的选项卡:
<block type="catalog/product_view_description" name="product.description" as="description" template="catalog/product/view/description.phtml">
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="setTitle" translate="value"><value>Details</value></action>
</block>
所以要添加另一个,添加另一个块:
<block type="catalog/product_view_description" name="product.video" as="video" template="catalog/product/view/video.phtml">
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="setTitle" translate="value"><value>Video</value></action>
</block>
然后使用您希望选项卡包含的任何内容创建模板文件catalog / product / view / video.phtml。
虽然这会添加一个标签就好了,如果你想以正确的Magento方式进行,那么应该使用你主题的local.xml文件中的引用来添加:
<catalog_product_view translate="label">
<reference name="product.info">
<block type="catalog/product_view_description" name="product.video" as="video" template="catalog/product/view/video.phtml" after="product.attributes">
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="addToParentGroup"><group>detailed_info</group></action>
<action method="setTitle" translate="value"><value>Video</value></action>
</block>
</reference>
</catalog_product_view>
答案 1 :(得分:2)
我不确定,但我认为您看到以下网址非常有用: -
Magento Enterprise标签 - 如何选择链接中的特定标签?
Magento Enterprise Tabs - How to select specific tab in link?
试一下,但请先查看上面的网址: -
我会考虑修改课程的启动方式。
initialize: function (container) {
this.container = $(container);
this.container.addClassName('tab-list');
this.tabs = this.container.select('dt.tab');
// change starts here //
var hashTab = $(window.location.hash.slice(1));
this.activeTab = ( this.tabs.include(hashTab) ? hashTab : this.tabs.first());
// change ends here //
this.tabs.first().addClassName('first');
this.tabs.last().addClassName('last');
this.onTabClick = this.handleTabClick.bindAsEventListener(this);
for (var i = 0, l = this.tabs.length; i < l; i ++) {
this.tabs[i].observe('click', this.onTabClick);
}
this.select();
}
在这里,我只更改了初始选项卡的选择方式。它会检查一个通常称为哈希的URL片段,如果它标识了预选的其中一个选项卡。作为奖励,如果可能,浏览器也会滚动到该元素。
然后,您只需将标签的ID附加到URL即可。例如,您可以通过;
生成URL$productUrl = Mage::getUrl('catalog/product/view', array(
'id' => $productId,
'_fragment' => 'tab_id',
));