2011-06-10 42 views
2

感謝Joseph Mastey我能夠爲Magento創建一個模塊,用於計算最重物品的運費,而不是購物車的總重量。Magento:表重量,編輯計算

使用此:

class MyNamespace_MyModule_Model_Shipping extends Mage_Shipping_Model_Shipping { 

    public function collectRates(Mage_Shipping_Model_Rate_Request $request) { 
     $maxWeight = 0; 
     foreach($request->getAllItems() as $item) { 
      $maxWeight = max($maxWeight, $item->getRowWeight()); 
     } 
     $request->setPackageWeight($maxWeight); 

     return parent::collectRates($request); 
    } 
} 

不過,現在,它已停止工作,這是回到基於總重量計算運費。我沒有更新,並想知道是否有人知道爲什麼這個功能不再起作用?任何想法將不勝感激。

+0

有沒有其他人可以訪問您的magento管理面板? – 2011-06-10 13:24:03

+0

感謝您的幫助。我剛剛解決了這個問題。在Webshopapps的Matrixrate插件中發現了一些覆蓋我的黑客權重計算的行。即:$ request-> setPackageWeight($ request-> getFreeMethodWeight());我評論過這一點,並非我所知道的完美解決方案,但它已經恢復了我所需的體重計算。 Yey! – 2011-06-10 13:28:36

+1

沒關係,只需將您的評論發佈爲答案並接受它即可。 – 2011-06-10 13:31:10

回答

1

我剛剛解決了這個問題。在Webshopapps的Matrixrate插件中發現了一些覆蓋我的黑客權重計算的行。即:$ request-> setPackageWeight($ request-> getFreeMethodWeight());我評論過這一點,並非我所知道的完美解決方案,但它已經恢復了我所需的體重計算。