我是magento中的新手,我需要在magento中有兩個產品視圖頁面。 一個用於本地產品,另一個用於國際產品。我已經定製了默認產品視圖頁面以顯示本地產品。 當我點擊默認產品視圖頁中提供的「國際產品」鏈接時,將顯示國際產品查看頁面。我爲國際產品創建了一個名稱爲「國際」的全功能模塊。但是現在我完全混淆了。是否可以在magento中創建自定義產品視圖頁面
如何使我的自定義模塊的功能與默認產品視圖頁一樣?製作另一個產品視圖頁是否正確?
請建議。
我是magento中的新手,我需要在magento中有兩個產品視圖頁面。 一個用於本地產品,另一個用於國際產品。我已經定製了默認產品視圖頁面以顯示本地產品。 當我點擊默認產品視圖頁中提供的「國際產品」鏈接時,將顯示國際產品查看頁面。我爲國際產品創建了一個名稱爲「國際」的全功能模塊。但是現在我完全混淆了。是否可以在magento中創建自定義產品視圖頁面
如何使我的自定義模塊的功能與默認產品視圖頁一樣?製作另一個產品視圖頁是否正確?
請建議。
你可以用兩種方法做到這一點。
我發現第二種方法非常方便,因爲我可以根據屬性值來識別我的佈局正在發生變化,並且更改此屬性值可以輕鬆更改我的佈局。
這是如何實施的。
更新initProductLayout
方法app/code/core/Mage/Catalog/Helper/Product/View.php
後$update->addHandle('PRODUCT_' . $product->getId());
代替這些線
if($product->getAttributeText('locality_type')=='International')
$update->addHandle('PRODUCT_INTERNATIONAL');
if($product->getAttributeText('locality_type')=='Local')
$update->addHandle('PRODUCT_LOCAL');
立即更新{theme}/layout/catalog.xml
。之後</PRODUCT_TYPE_virtual>
地方這些線路
<PRODUCT_INTERNATIONAL>
<reference name="product.info">
<action method="setTemplate"><template>catalog/product/view_international.phtml</template></action>
</reference>
</PRODUCT_INTERNATIONAL>
<PRODUCT_LOCAL>
<reference name="product.info">
<action method="setTemplate"><template>catalog/product/view_local.phtml</template></action>
</reference>
</PRODUCT_LOCAL>
剩餘現在唯一的事情是,你必須在{theme}/template/catalog/product
您可以將不同的代碼視圖文件,以使它們看起來不同的創建這兩個文件view_local.phtml
和view_internationl.phtml
。對於進一步的修改,你在catalog.xml
有自己的處理標籤。只要你想使用它。
非常感謝你。這似乎是我的問題的一個很好的解決方案。\ –
學習重寫phtmls.then你可以很容易地做到這一點。 –
感謝@Mahmood Rehman的回覆。你能給我推薦一些參考頁嗎? –
我認爲最好是使用相同的視圖頁面的兩個operation.while在頁面的開始設置一些變量和顯示數據。 –