将自定义计算添加到magento中的购物车总计和总计

将自定义计算添加到magento中的购物车总计和总计,magento,cart,observers,Magento,Cart,Observers,我正在网站上工作,我想在购物车总计和总计中添加/减去费用。我正在启动此事件以捕获购物车详细信息。销售\订单\保存\u后。在observer中,我使用此代码获得了价格 public function modifyPrice(Varien_Event_Observer $obs) { $getotal = Mage::helper('checkout')->getQuote()->getGrandTotal(); $totals = Mag

我正在网站上工作,我想在购物车总计和总计中添加/减去费用。我正在启动此事件以捕获购物车详细信息。
销售\订单\保存\u后
。在observer中,我使用此代码获得了价格

public function modifyPrice(Varien_Event_Observer $obs)
        {


       $getotal = Mage::helper('checkout')->getQuote()->getGrandTotal();
       $totals = Mage::getSingleton('checkout/session')->getQuote()->getTotals(); 
       $subtotal = $totals["subtotal"]->getValue();
}.
但我不知道如何从总数中加/减金额,然后相应地更新。提前谢谢你

我恐怕这不是一个直截了当的任务来完成,虽然你可以采取以下作为参考开始


希望上面的链接有帮助。

在搜索后,我找到了本教程。在折扣模型类中,我可以向购物车总价中添加/减去自定义价格,如:

 public function collect(Mage_Sales_Model_Quote_Address $address) {
            if ($address->getData('address_type') == 'billing')
                return $this;

                $discount = Mage::helper('my_module')->getCurrentdiscount(); // Custom percentage

                $grandTotal = $address->getGrandTotal();
                $baseGrandTotal = $address->getBaseGrandTotal();

                $totals = array_sum($address->getAllTotalAmounts());
                $baseTotals = array_sum($address->getAllBaseTotalAmounts());

                $address->setFeeAmount(-$totals * $discount / 100);
                $address->setBaseFeeAmount(-$baseTotals * $discount / 100);

                $address->setGrandTotal($grandTotal + $address->getFeeAmount());
                $address->setBaseGrandTotal($baseGrandTotal + $address->getBaseFeeAmount());
        return $this;
    }

我知道这一点,并且我已经学习了该教程。他们正在将自定义价格添加到购物车中。但在我的情况下,自定义价格可能是百分比,或者将在运行时检查价格。因此,为什么我不去那里,您可以更改以下行:$fee=Excellence\u fee\u Model\u fee::getFee();无论你对价格作何计算。。此外,您无法从web获得精确的解决方案。使用此技术后,您可能需要根据您的问题对其进行一些调整/更改。我不知道为什么优惠券代码停止工作。。有人能帮我吗。我正在做的事情将收取额外费用,但如果我收取额外费用,那么如果用户有couponcode,couponcode将停止工作..您能否分享您在何处添加xml的详细信息,使用路径类实际上,我正在尝试使用您给定的教程链接在grand total的购物车中添加折扣,但我无法理解您能否指导我实现这一点我正在使用过去两天的时间,运气为0。使用此技术后。我不知道为什么优惠券代码停止工作。。有人能帮我吗。我所做的将收取额外费用,但如果我收取额外费用,则如果用户有couponcode,则couponcode将停止工作。@Sandepsing我认为您可以发布您的问题,以便其他成员可以回答。