Magento免费送货不工作

Ahm*_*hem 4 magento

我从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)