Guillaume_KS Posted April 28, 2023 Share Posted April 28, 2023 Bonjour, Je souhaite créer une règle de panier avec un produit cadeau pour 10 produits achetés : par exemple si vous achetez 10 produits X, vous recevez 1 produit X supplémentaire. Ceci est géré nativement par la règle de panier. Ce que je voudrais, c'est qu'à partir de 20 produits X, vous ne receviez pas 1 produit X, mais 2 produits X, 3 à partir de 30 etc... Savez-vous comment cela peut être géré ? Voici une partie de mon code actuel qui gère l'ajout d'une règle de panier $cartRule = new CartRule(); if($id_customer) { $cartRule->id_customer = $id_customer; } $cartRule->name = array($this->langId => "test_promoX+Y"); $cartRule->date_from = $date_formated; $cartRule->date_to = "2050-01-01"; $cartRule->active = true; if($id_group) { $cartRule->group_restriction = true; } $cartRule->product_restriction = true; if($id_product) { $cartRule->gift_product = $id_product; } $cartRule->save(); $id_cart_rule = $cartRule->id; if($id_group > 0) { $groupRestriction = \Db::getInstance()->getValue( "INSERT INTO "._DB_PREFIX_."cart_rule_group (id_cart_rule, id_group) VALUES ($id_cart_rule, $id_group) " ); } if($id_product > 0) { $type = 1; Db::getInstance()->execute( "INSERT INTO " . _DB_PREFIX_ . "cart_rule_product_rule_group (id_cart_rule, quantity) VALUES ($id_cart_rule, 1)"); $id_product_rule_group = \Db::getInstance()->Insert_ID(); Db::getInstance()->execute( "INSERT INTO " . _DB_PREFIX_ . "cart_rule_product_rule (id_product_rule_group, type) VALUES ($id_product_rule_group, $type)"); $id_product_rule = Db::getInstance()->Insert_ID(); Db::getInstance()->execute( "INSERT INTO " . _DB_PREFIX_ . "cart_rule_product_rule_value (id_product_rule, id_item) VALUES ($id_product_rule, $id_product)"); } return true; } Merci d'avance ! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now