2017-02-05 9 views
1

사이트에서 2 가지 지불 방법을 사용할 수 있으며 고객이 X 금액 (문제가 아님) 이상 구매시 고객에게 은행 이체을 지불 방법으로 사용하는 경우 무료 배송을 설정하도록 요청했습니다.Woocommerce의 특정 지불 방법에 대해 무료 배송을 설정하려면 어떻게해야합니까?

많은 플러그인을 사용해 보았지만 총 금액에서 요금을 추가 및 제거 할 수 있습니다. 따라서 은행 송금에서 배송비를 삭제하도록 설정했지만 주문 금액이 X 개를 초과하면 무료 배송), 플러그인은 결국 총 가격을 배송비로 줄입니다.

무엇을해야할까요? Stackoverflow 또는 Google에서 아무 것도 찾을 수 없습니다.

답변

0

이것은 매우 복잡하므로 질문에 부분적으로 대답합니다. 코드를 제공하지 않았고 시도한 플러그인에 대한 참조 나 세부 정보가 없으므로 StackOverFlow에서 무료 개발을 제공하지 않습니다.

// Only for WooCommerce version 2.6+ 

// Hidding all shipping methods except "free shipping" when a cart amount is reached 
add_filter('woocommerce_package_rates', 'my_hide_shipping_when_free_is_available', 100); 
function my_hide_shipping_when_free_is_available($rates) { 

    $cart_items_total = WC()->cart->cart_contents_total; 

    $free = array(); 
    foreach ($rates as $rate_id => $rate) { 
     if ('free_shipping' === $rate->method_id && $cart_items_total > 20) { 
      $free[ $rate_id ] = $rate; 
      break; 
     } 
    } 
    return ! empty($free) ? $free : $rates; 
} 

지불 방법이 선택됩니다로서 : 여기

은 당신의 목표 카트 금액에 도달 할 때 다른 배송 방법을 숨길 WooCommerce 공식 조각 코드를 기반으로 코드의 조각입니다 계산 페이지 하단의, BACS 지불 게이트웨이 인 에 대해이 방법을 사용하는 유일한 방법은 BACS 고객 선택 이벤트에 아약스를 사용하는 것입니다. 그러나 이것은 다소 복잡하고 실제적인 개발입니다 ... 불편을 끼쳐 드려 죄송합니다.