> 문서 > 옵션형(Variable) 상품의 Up-sell/Cross-sell

옵션형(Variable) 상품의 Up-sell/Cross-sell

2022년 5월 18일

옵션형(Variable) 상품의 경우 상품 페이지에서의  추천상품으로는  Up-sell, Cross-sell 에 지정한 상품들이 잘 연동되어 출력이 되지만,

장바구니나 결제 페이지에서는 상품의 옵션(variation)이 기준이 되기 때문에 상품에서 지정한 Up-sell, Cross-sell 이 연동되지 않는다.

이러한 경우 상품의 옵션별로 추천상품을 선택하여 적용할 수 있는 플러그인도 있다지만, 대부분의 경우에는 상품의 옵션별로 추천하는 상품이 달라지지 않는다.

이 경우 옵션(variation)이 아닌 해당 상품에 대한 추천 상품을 연동해 주는 것이 필요하다.

Up-sell 에 대한 적용은 아래 코드를 테마의  functions.php 파일에 추가 해 주면 된다.

add_filter( 'woocommerce_product_variation_get_upsell_ids', 'danbi_wc_variation_get_upsell_ids'], 10, 2 );
function danbi_wc_variation_get_upsell_ids($value, $product) {
       $product_id = $product->is_type('variation') ? $product->get_parent_id() : false;

       if ( $product_id ) {
              $parent = wc_get_product($product_id);
              $value = $parent->get_upsell_ids();
       }

       return $value;
}

 

추가로 Cross-sell 에도 적용하려면 아래 코드를 테마의  functions.php 파일에 추가 해 주면 된다.

add_filter( 'woocommerce_product_variation_get_cross_sell_ids', 'danbi_wc_variation_get_cross_sell_ids'], 10, 2 );
function danbi_wc_variation_get_cross_sell_ids($value, $product) {
       $product_id = $product->is_type('variation') ? $product->get_parent_id() : false;

       if ( $product_id ) {
              $parent = wc_get_product($product_id);
              $value = $parent->get_cross_sell_ids();
       }

       return $value;
}

 

0개의 댓글

댓글 제출

    0
    장바구니
    장바구니가 비었습니다.
      할인쿠폰 적용