多亏了Joseph Mastey,我才能为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);
}
}
然而,现在,它已经停止工作,它又回到了根据总重量计算运费。我没有运行任何更新,并想知道是否有人有线索,为什么这个功能不再工作?任何想法将不胜感激。
1条答案
按热度按时间ffx8fchx1#
我刚刚解决了这个问题,实际上。在Matrixrate插件中找到一些线的Webshopapps,覆盖了我的黑客重量计算。即:$请求-〉设置 Package 重量($请求-〉获取自由方法重量());我已经注解了这个,我知道这不是完美的解决方案,但它已经恢复了我想要的重量计算。