2011-10-12 104 views
0

我遇到問題,我想爲不同類型的產品顯示不同的詳細信息頁面。其實我已經安裝了Unirgy Gift Certification插件,我希望爲此類型的產品裝入不同類型的頁面。Magento針對不同產品類型的不同詳細信息頁面

我加了下面的的catalog.xml代碼,但它似乎並不奏效

<PRODUCT_TYPE_ugiftcert translate="label" module="catalog"> 
     <label>Catalog Product View (Gift Certificate)</label> 
     <reference name="content"> 
      <block type="catalog/product_view" name="product.info" template="catalog/product/view-gift.phtml" /> 
      <block type="catalog/product_view_type_ugiftcert" name="product.info.ugiftcert" as="product_type_data" template="catalog/product/view/type/default.phtml"> 
       <block type="core/text_list" name="product.info.ugiftcert.extra" as="product_type_data_extra" translate="label"> 
        <label>Product Extra Info</label> 
       </block> 
      </block> 
     </reference> 
    </PRODUCT_TYPE_ugiftcert> 

你能告訴我什麼,我做錯了什麼? 是否有可能爲不同類型的產品提供不同的詳細信息頁面?像可配置/簡單產品或基於屬性集的不同詳細頁面的不同。

回答

2

如果正在調用該佈局,則可以像那樣更新。 前段時間我在這裏寫了一篇很快的文章。 http://www.sharpdotinc.com/mdost/2010/12/17/magento-layout-handels-and-layout-xml-files/

您需要做的是進入產品控制器,並在視圖操作中將以下代碼放在loadLayout()調用之後。

$this->loadLayout(); 
print_r($this->getLayout()->getUpdate()->getHandles());die(); 
//  .... OTher COde 

這將顯示所有可用的句柄。如果你沒有看到你在這裏處理,那麼它將不會被加載。

PRODUCT_TYPE_ugiftcert 
+0

acually我用這個:'的print_r($這個 - > getLayout() - > getUpdate() - > getHandles());'把佈局加載,但是,我想在這裏是:我想要的加載一個完全不同的** view.phtml **的情況下,'PRODUCT_TYPE_ugiftcert',是否有可能在** catalog.xml中做一些破解,並告訴它加載完全不同的** view-gift.phtml ** – Ravish

+0

是的,如果你處理的是清單,那麼你的代碼應該工作,並將模板更改爲目錄/ product/view-gift.phtml 您也可以使用觀察器,並且當產品頁面加載塊時,檢查如果是ugiftcert類型,則更改塊的模板。 –

+0

感謝您的幫助,我已經解決了我的問題。 – Ravish

相關問題