Убираем способы оплаты , если хоть один товар с нулевой ценой

//Убираем способы оплаты , если хоть один товар без цены .
add_filter('woocommerce_cart_needs_payment', 'need_p',30);

function need_p($bool){
  return ($bool && !has_goods_with_zero_price_in_cart());
}

function has_goods_with_zero_price_in_cart(){
  foreach (WC()->cart->cart_contents as $product){
    if(0 == $product["data"]->price){
      return true;
    }
  }
  return false;
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.