$this->context->cart->getProducts();
$this->context->cart->???
$context->cart->getCartRules(CartRule::FILTER_ACTION_ALL);
Код: [Выделить]$context->cart->getCartRules(CartRule::FILTER_ACTION_ALL);Смотрите в классе CartRules там варианты скидок.
public function hookActionCartSave()
hookActionCartSave()
$this->context->cart->addCartRule($cartRule->id);
Hook::exec('ActionCartSave, $params);
Вы можете получить данные по скидке в корзине только после завершения метода hookActionCartSave.Только когда информацмя будет сохранена в бд можно ее получить.
Hook::exec('hookActionCartSave', $params);
Можете но зачем? В любом контроллере вы можете использовать классы prestashop, это лучше.
hookActionCartSave при обновлении корзины, т.е. товары, кол-во, цена и т.д.Промо код это правила корзины, каталога или дискаунт на товары, клиента?
public function hookSubmitVoucherCode(){ /* Place your code here. */}
$this->context->cart->addCartRule($cartRule->id);$_GET['cart_rule'] = 'add';Hook::exec('actionCartSave');
$this->context->cart->removeCartRule($id_cart_rule);$_GET['cart_rule'] = 'del';Hook::exec('actionCartSave');
public function hookActionCartSave() { $cart_rule = Tools::getValue('cart_rule'); if(!empty($cart_rule)) { Tools::testInfo($cart_rule.' промо код'); }.....