如何让 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
我到处寻找解决方案,使用 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