希望有人能帮我制定一条马根托规则--这条规则可能吗?
我有许多大小的产品,都是同一类别的一部分。
每种产品,无论大小,都要花费GB3.98--如果买家购买3种同类产品,无论产品或大小如何,他们都会按GB9.99的价格购买。如果他们购买了4种产品,他们可以花9.99英镑买到其中的3种产品,但要支付全部价格,因为3人的4th...Every组是GB9.99
我制定了一条规则,如果客户购买同一产品的3/6/9商品,如果它们混合和匹配,则相同的size...However不起作用(尽管它们是同一类别),这似乎是完美的。
规则是:
如果所有这些条件都为真:如果购物车中的一个子选择项的总数量等于或大于3,则所有这些条件都匹配:类别为4
我还将折扣Qty步骤设置为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 of 4...The价格为3.33,而不是正常的3.99的产品,适用3倍的折扣。
发布于 2014-07-18 11:25:57
您需要事件-观察者的方法,这将给您所需的灵活性。您可以构建一个观察者来捕获加到购物车事件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);祝好运!
https://stackoverflow.com/questions/24823834
复制相似问题