好的我找到了答案: 我們有一個模塊(socolissimoflexibilite
)擴展模塊socolissimosimplicite
。 socolissimoflexibilite
重寫collectRates()
函數,並且freeShipping
不再受支持。我必須自己重寫這部分。 對於人們獲得這種模塊同樣的問題,這裏是招:
在Addonline_SoColissimoFlexibilite_Model_Carrier_ShippingMethod
類中,collectRates()
功能必須與此代碼來代替:
public function collectRates(Mage_Shipping_Model_Rate_Request $request)
{
$rates = parent::collectRates($request);
$shippingAddress = Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress();
if ($shippingAddress && $shippingAddress->getData('soco_product_code') == 'RDV') {
foreach ($rates->getAllRates() as $rate) {
if ($rate->getCarrier()===$this->_code) {
$rate->setPrice($rate->getPrice()+(int)Mage::getStoreConfig('carriers/socolissimoflexibilite/rdv_fees'));
}
}
}
if($shippingAddress->getFreeShipping()) {
foreach ($rates->getAllRates() as $rate) {
if($rate->getCarrier() === $this->_code) {
$rate->setPrice(0) ;
$rate->setCost(0) ;
}
}
}
return $rates;
}
而現在,freeShipping規則將由支持socolissimoflexibilite
!