我正在尝试从已应用于订单的折扣中获取“规则名称”(我认为是唯一标识符,是吗?)。
这是引导代码:
$order_id = Mage::getSingleton('checkout/session')->getLastOrderId();
$order = Mage::getModel('sales/order')
->load($order_id);
$order_items = $order->getAllItems();
foreach ($order_items as $itemId => $item) {
我正在使用$item->getSku();
来处理产品SKU ...这也会获取折扣的唯一标识符吗?
非常感谢!
编辑 AlanStorm提出了一个很好的观点,所以我会澄清:
我正在处理的折扣是“购物车规则”,对于这个问题,它们是针对特定产品的。
这样就会提示第二个问题:我如何获得应用于整体订单的“购物车规则”的唯一标识符(例如所有商品的10%折扣)?
答案 0 :(得分:0)
简短的回答:不,他们没有。它们按报价/订单存储,并且另外存储在每个报价/订单项目中。请在此处查看我的answer有关可用内容和不可用内容的内容。因此,只有discount_amount
存储在您的订单中。您可以使用它来计算折扣百分比,或applied_rule_ids
加载规则并在那里获取信息。