찾다

 >  Q&A  >  본문

WooCommerce Checkout - 사용자 역할 및 장바구니 내용 확인

WooCommerce의 결제 프로세스에 문제가 있습니다.

저는 일반 제품과 B2B 제품을 구별하기 위해 "B2B for WooCommerce" 플러그인을 사용합니다. 장면은 다음과 같습니다:

1 - 미등록 방문자는 "일반" 카테고리(기본적으로 미등록 방문자에게 제공됨)의 제품을 장바구니에 추가합니다.

2 - 체크아웃 페이지에서 방문자는 B2B 고객으로 등록하기로 결정합니다(체크아웃 페이지의 양식 선택 필드를 통해).

3 - 이 페이지에서는 등록 및 결제 프로세스가 동시에 진행됩니다.

사용자가 B2B 고객으로 등록하고 장바구니에 "일반" 제품이 있는 경우 주문이 이루어지지 않도록 하고 싶습니다. 이 두 가지 작업(가입 및 결제)이 동시에 발생하므로 일반적인 WooCommerce 후크는 예상대로 작동하지 않습니다.

결제 과정에서 등록되는 사용자 역할과 장바구니 내용을 확인하고 조건이 충족되면 주문을 차단하는 방법은 무엇입니까? 아니면 더 좋고 쉬운 방법이 있을까요?

장바구니 재설정 및 페이지 새로고침 기능을 사용해보았습니다.

편집자:

사용자 역할: Wwp_wholesaler

일반 및 도매라는 두 가지 WooCommerce 제품 카테고리를 만들었습니다. "일반"은 모든 방문자에게 표시됩니다. 역할을 등록하면 "Wwp_wholesaler"에서 "Wholesale"을 볼 수 있습니다.

선택 필드의 이름 속성은 "afreg_select_user_role"입니다. 옵션의 값 속성은 "customer"(일반 고객의 경우) 및 "wwp_wholesaler"(도매업자의 경우)입니다.

P粉545910687P粉545910687224일 전740

모든 응답(1)나는 대답할 것이다

  • P粉014293738

    P粉0142937382024-04-04 00:01:07

    다음 코드는 B2B 고객의 장바구니에 일반 품목이 있음을 감지하면 결제 프로세스를 조기에 중지합니다. 이 경우 일반 품목이 장바구니에서 제거되고 오류 메시지가 표시되어 주문이 접수되지 않습니다.

    참고: 사용자 역할 별칭이 대문자로 표시되지 않기 때문에 제공된 사용자 역할 별칭이 잘못되었습니다.

    코드:

    으아아아

    코드는 하위 테마의 function.php 파일(또는 플러그인)에 있습니다. 테스트를 거쳐 작동 중입니다.

    회신하다
    0
  • 취소회신하다