Вопрос

I want to delete the coupon code programmatically. My code is:

$cart = $this->quoteRepository->getActive($cartId);

  if(isset($response_json['errorMessage']) || $json_response['status']['statusCode'] == 0){
    $cart->setCouponCode('');
    $cart->collectTotals()->save();
    $this->logger->debug("test");
  }

I see the "test" in my debug. But the Coupon code not removed. Can someone help me?

Thank you in advance!

Это было полезно?

Решение

You can do it like below.

if(isset($response_json['errorMessage']) || $json_response['status']['statusCode'] == 0){
    $cart->setCouponCode('');
    $this->quoteRepository->save($cart->collectTotals());
    $this->logger->debug("test");
}

Другие советы

I suggest another way. Go to your xml file and put this code at before body tag close

<referenceBlock name="block_name" remove="true"/>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top