2012-08-28 70 views
2

我正在使用Magento Enterprise 1.12,並希望將自定義選項卡(傳遞,視頻)添加到產品視圖頁面,該視圖頁面的產品屬性中指定了其內容。該初始化選項卡下面的腳本是:添加產品視圖輔助選項卡Magento Enterprise v1.12

//<![CDATA[ 
    var collateralTabs = new Enterprise.Tabs('collateral-tabs'); 
     Event.observe(window, 'load', function() { 
     collateralTabs.select(); 
    }); 
//]]> 
從創建產品屬性我真的不知道從哪裏開始的這一點,所以任何幫助,將不勝感激

一邊去!

親切的問候

回答

4

企業中的選項卡處理方式與社區不同,這可能會導致嘗試查找解決方案時出現問題。在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> 

然後創建模板文件的目錄/產品/圖/視頻.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> 
2

我不知道,但我認爲這是非常有助於全額你看到下面的網址: -

Magento企業標籤 - 如何鏈接選擇特定的標籤?

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', 
)); 
+0

謝謝您回答阿比德,但這不是我問的問題。我想知道如何添加其他產品選項卡,而不是鏈接到特定的選項卡。 – BigRob