2017-03-07 13 views
1

조건에 따라 특정 제품 변형을 회색으로 표시 할 수 있도록 사용자 정의 된 WooCommerce 샵이 있습니다. 그러나 코드를 어디에 사용해야할지 잘 모르겠습니다.그레이 아웃 조건에 따른 Woocommerce 제품 변형?

  • 각 품목마다 두 가지 가격이 있습니다. 하나는 회원 가격이고 다른 하나는 소매 가격입니다.
  • 나는 모든 변형을 볼 수 있지만 사용할 수없는 것을 선택할 수 없기 때문에 비회원은 소매가를 볼 수는 있지만 선택할 수는 없으며 그 반대도 마찬가지입니다.
  • 내가 원하는 다른 맞춤 설정은 회원이 매월 회원 가격으로 5 개 제품을 구매할 수 있도록 허용 한 다음 소매 가격으로 전환하여 회색으로 전환 할 수 있어야합니다. 특정 조건에 따라 회원의 회원 가격을 책정하십시오.

누구나 나를 변형 출력에 맞춤 코드를 삽입 할 수있는 파일/후크/동작을 가르쳐 주시겠습니까?

감사합니다.

답변

1

두 가지 질문에 대해서는 woocommerce_add_to_cart_validation 필터 걸이를 사용할 수 있습니다. 사용자 역할과 기존 함수 인수를 기반으로하는 조건에 따라 고객은 제품 변형을 선택할 수는 있지만 허용되지 않으면 장바구니에 추가 할 수 없습니다. 당신은 당신이 회원 달 5 개 제품에 대한 일부 사용자 지정 사용자 메타 데이터 설정/업데이트해야합니다, 허용되지 않는 경우 고객 시도 뭔가를 추가하는 통지 ... 당신의 마지막 질문에 대한

add_filter('woocommerce_add_to_cart_validation', 'custom_add_to_cart_validation', 10, 5); 
function custom_add_to_cart_validation($passed, $product_id, $quantity, $variation_id, $variations) { 

    // Your code goes here 

    // If $passed is set to "false", the product is not added 
    // $passed = false; 

    return $passed; 
} 

를 표시 할 수 있습니다 그들이 주문할 때마다. 이를 위해 woocommerce_thankyou 또는 woocommerce_order_status_completed 조치 후크를 사용하여 사용자 메타 데이터에 해당 사용자 정의 데이터를 설정할 수 있습니다. 그러면이 데이터를 확인하여 woocommerce_add_to_cart_validation 필터 고리에서 올바른 제품 변형을 활성화 또는 비활성화 할 수 있습니다.

일부 유사 콘텐츠를 회색으로 표시하려면 Javascript/jQuery를 사용해야하지만 이미 다양한 제품에 대한 javascript/Ajax WooCommerce 이벤트가 많으므로 상당히 어려울 것입니다. 너와 갈등 할거야. 그러나 WooCommerce에서는 시간과 기술에 따라 모든 것이 가능합니다 ...