2010-11-18 41 views
1

不確定是否有人可以提供幫助?Magento - 在計算價格頂部添加百分比

我們需要在計算價格的基礎上增加一個百分比,而不是基準價格。

例如

基本價格=£10

選擇1 選項1 +£10 選項2 +£20

選擇2 選項1 + 10% 選項2 + 20%

我們需要計算基本價格+(選擇1中的選項1),然後在該小計的基礎上,我們需要添加(選項2中的選項1)到該小計價格,而不是基本價格。

從目前爲止我們所見到的情況來看,這是否可能?所有的百分比都是在基本價格上計算出來的,而不是小計的。

回答

2

粗略地說,您應該創建一個自定義產品類型,以便您可以提供此自定義計算而不更改可能仍用於商店中其他產品的「簡單」產品類型。真正的工作將在它的價格模型中完成。

定義一個新的類型很簡單:

<config> 
    <global> 
     <catalog> 
      <product> 
       <type> 
        <CUSTOM> 
         <label>CUSTOM PRODUCT TYPE</label> 
         <model>catalog/product_type_abstract</model> 
         <priceModel>YOURMODULE/product_type_CUSTOM<priceModel> 
        </CUSTOM> 
       </type> 
      </product> 
     </catalog> 
    </global> 
</config> 

的模塊需要an install script其分配各種價格的相關屬性自定義類型,否則他們不會在產品的編輯頁面上顯示出來。

現在需要一個類YOURMODULE_Model_Product_Type_CUSTOM_Price,它應該從Mage_Catalog_Model_Product_Type_Price下降。新類應覆蓋以下方法:

protected function _applyOptionsPrice($product, $qty, $finalPrice) 

請參閱父級的工作方法,然後使其工作方式如何。

我想你可能會循環所有的產品選項,並保持兩個總數,其中一個固定價格和百分比之一。將固定值添加到基準價格,然後乘以百分比值。

然後,剩下的就是使用新類型在管理員中添加新產品。

+1

你讓它聽起來那麼簡單:) – 2010-11-19 12:04:06