【问题标题】:magento show all discount coupons in shopping cartmagento 显示购物车中的所有优惠券
【发布时间】:2014-07-15 09:22:45
【问题描述】:
    <?php $rulesCollection = Mage::getModel('salesrule/rule')->getCollection();
            $i=1;
            $items = Mage::getSingleton('checkout/session')->getQuote()->getAllItems();
            $totalPrice = 0;  
            foreach($items as $item) {
            $totalPrice+=$item->getPrice();
            }
            $coll = Mage::getResourceModel('salesrule/rule_collection')->load();
            echo '<div class=vip_test>';
            foreach($coll as $rule){
            $productDetail = $rule->afterLoad();
            $discountAmount = $productDetail['discount_amount'];
            echo "<div class=ssk><span> You Save : </span>".$totalAmount =  $totalPrice-($discountAmount/100*$totalPrice)."</div>";
          $ruleID = $productDetail['rule_id'];
           } 
            foreach($rulesCollection as $rule){
           $coupon = $rule->getCode();
            $couponName = $rule->getName()

           ?>

在 Magento 中,我只得到优惠券代码和优惠券名称。我想在优惠券前面显示购物车中是否有特定产品的优惠券代码 - 它显示节省金额。有没有可能?我做错了吗?请帮帮我

【问题讨论】:

  • 我认为您还有很长的路要走才能找到解决方案。不可能像你提到的需求那么简单
  • 那么,我们该怎么做呢?请帮帮我。
  • Magento 一次只应用一个优惠券代码 - 有点交叉用途,因为当客户发现无法使用多个优惠券时,他们会被淘汰。

标签: magento discount coupon


【解决方案1】:

首先,您需要获取购物车中的产品集合。然后您需要检查购物车中产品的目录价格规则或购物车价格规则中是否有任何有效的优惠券。如果以上所有条件都成立,那么您需要显示它的优惠券代码。

接下来,你需要计算它的差额,还需要显示如果用户增加了他的数量,那么储蓄金额的值也必须增加。

【讨论】:

  • $cart = Mage::getModel('checkout/cart')->getQuote(); foreach ($cart->getAllItems() as $item) { $productName = $item->getProduct()->getName(); } 通过此代码,我可以获取购物车中的所有商品,但我如何检查它们是否有优惠券