我有Prestashop 1.6.1.4,商店里的大部分产品都是零库存,但可以订购。
在本例中,我希望订购零库存产品(预购)的客户获得特定的%折扣。
如何在目录价格规则中添加这样的过滤器?
抱歉,prestshop不支持。
对
据我们所知,通过在目录价格规则菜单中添加条件是不可行的,但是您可以调整代码来实现这一点。
为了做到这一点,您需要创建一个优惠券,根据您的需要提供折扣,然后您可以检查购物车状态并将生成的优惠券应用于当前购物车。
您可以使用以下代码来检查购物车库存状态:
$stock = false;
$check = 0;
$products = $this->context->cart->getProducts();
foreach ($products as $pro)
{
if ($pro->out_of_stock)
{
$check++;
}
}
if ($check == count($products))
{
$stock = true;
}
如果最后$stock的值为真,则购物车中的所有产品都缺货。然后,您可以使用以下代码将购物车规则应用于当前购物车:
$cart_rule_id = CartRule::getIdByCode(COUPON_CODE);
$this->context->cart->addCartRule(cart_rule_id);