如何让 Magento 计算 Total Order Inc. 的免费送货。税

How to let Magento calculate free shipping on Total Order Incl. TAX

我到处寻找解决方案,使用 magento 1.9.1。我的商店有两种不同的税费 6% 和 21%;magento 在下订单时会查看这些税费。

我设置了 Table 费率,45 欧元以上应免运费。现在它以 56 欧元左右的价格提供免费送货服务(减去 21% 的税后您的价格为 45 欧元)。我该如何解决?

(PS:Magento 1.9.1 似乎没有查看 app/code/core/Mage/Shipping/Model/Carrier/freeshipping。php,因为编辑此文件后没有任何变化)

为了在 table 费率(无论免费或非免费送货)的运费计算范围内征税,您可以延长 Mage_Shipping_Model_Carrier_Tablerate。当然,在自己的扩展中这样做会更好,但您也可以在本地代码池中覆盖它。因为这样更快并且为了演示,我将展示:

app/code/core/Mage/Shipping/Model/Carrier/Tablerate.php复制到app/code/local/Mage/Shipping/Model/Carrier/Tablerate.php。现在,在 // Free shipping by qty 上方的 collectRates(Mage_Shipping_Model_Rate_Request $request) 函数中添加以下代码:

if (Mage::helper('tax')->priceIncludesTax()) {
            foreach ($request->getAllItems() as $item) {
                $request->setPackageValue($request->getPackageValue() + $item->getTaxAmount());
            }
        }

这样一来,计算基础将包括您的税款。这首先是在这里讨论的(据我所知):https://magento.stackexchange.com/questions/26434/shipping-method-table-rates-magento-v-1-7-always-include-tax-in-order-subtota