我从System-> Configration-> Shipping Methods启用了免费送货,我将最低订单金额设置为50,但它不起作用
我也想知道为什么这种情况if($request->getFreeShipping())总是会失败
Cal*_*n K 11
我自己实际上遇到了这个问题,偶然发现了这个问题.对我来说,这是因为购物车小计未在Freeshipping.php文件中正确加载,该文件位于以下路径中.
文件路径:
/app/code/core/Mage/Shipping/Model/Carrier/Freeshipping.php
Run Code Online (Sandbox Code Playgroud)
现在,复制此文件:
/app/code/core/Mage/Shipping/Model/Carrier/Freeshipping.php
Run Code Online (Sandbox Code Playgroud)
到这个文件位置
/app/code/local/Mage/Shipping/Model/Carrier/Freeshipping.php
Run Code Online (Sandbox Code Playgroud)
找到具有此功能的行
if (($request->getFreeShipping())
|| ($request->getBaseSubtotalInclTax() >= $this->getConfigData('free_shipping_subtotal'))
Run Code Online (Sandbox Code Playgroud)
并用它替换它
$totals = Mage::getSingleton('checkout/cart')->getQuote()->getTotals();
$subtotal = $totals["subtotal"]->getValue();
if (($request->getFreeShipping())
|| ($subtotal >= $this->getConfigData('free_shipping_subtotal'))
Run Code Online (Sandbox Code Playgroud)