【问题标题】:Magento Shopping Cart Rule - Is this combination possibleMagento 购物车规则 - 这种组合是否可行
【发布时间】:2014-07-18 11:20:28
【问题描述】:

希望有人可以帮助我制定 Magento 规则 - 这条规则是否可行

我有许多不同尺寸的产品,它们都属于同一类别。

无论尺寸大小,每件商品的价格为 3.98 英镑 - 如果买家购买 3 件相同类别的商品,无论商品或大小如何,他们都会以 9.99 英镑的价格购买。如果他们购买 4 件产品,他们以 9.99 的价格获得其中 3 个,但为第 4 个支付全价......每组 3 个是 9.99 英镑

我创建了一条规则,如果客户购买 3 / 6 / 9 件相同产品和相同尺寸的商品,它似乎可以完美运行......但是,如果它们混合搭配,它就不起作用(尽管它们是相同的类别)

规则是:

如果所有这些条件都为真: 如果购物车中符合所有这些条件的部分商品的总数量等于或大于 3: 类别为 4

我还将折扣数量步长设置为 3

* 更新 *

感谢您的回复 - 我已尝试实施您的建议,并且到目前为止,我已经获得了添加产品的类别 ID。我不确定如何设置以前产品的价格,所以它会自动打折

$quote = Mage::getSingleton('checkout/session')->getQuote();
$cartItems = $quote->getAllVisibleItems();
$itemPrice = "3.33";

foreach ($cartItems as $items) {
    $product = $items->getProduct();
    $prodCats = $product->getCategoryIds();
    if (in_array('4', $prodCats)) {
        $itemQty = $items->getQty();
    }

    $totalItems += $itemQty;
}

所以我想做的是为任何 category_id 为 4 的产品应用 3 倍数的折扣...价格将是 3.33 而不是正常的 3.99

【问题讨论】:

    标签: magento cart shopping magento-rules


    【解决方案1】:

    为此,您需要事件 - 观察者方法,这将为您提供所需的灵活性。您可以构建一个观察者来捕获添加到购物车事件sales_quote_add_item 并将您的逻辑放在那里。

    观察者函数中的以下代码将为您指明正确的方向:

    // 获取购物车中的产品:

    $quote = Mage::getSingleton('checkout/session')->getQuote();
    $cartItems = $quote->getAllVisibleItems();
    foreach ($cartItems as $item) {
        $itemSku = $item->getSku();
        $itemQty = $item->getQty();
    }
    

    // 添加的产品:

    $item = $observer->getEvent()->getQuoteItem();
    $itemQty = $item->getQty();
    $itemSku = $item->getSku();
    

    // 更改添加产品的价格:

    $item->setOriginalCustomPrice($newPrice);
    

    祝你好运!

    【讨论】:

    • 非常感谢您的指导 - 我已经根据我的进度更新了票证...也许您可以进一步提供帮助
    猜你喜欢
    • 1970-01-01
    • 2013-02-18
    • 2015-01-08
    • 1970-01-01
    • 1970-01-01
    • 2015-03-09
    • 2012-11-03
    • 1970-01-01
    相关资源
    最近更新 更多