2017-12-07 15 views
1

나는 WooCommerce 제품 부가 기능 플러그인을 사용하여 WooCommerce를 사용하고 있습니다. 단일 제품 페이지에서 "장바구니에 추가"버튼을 제거하는 많은 해답을 보았습니다. 또한 WooCommerce 제품 추가 기능을 제거합니다.Woocommerce Product Add-ons을 (를) 제거하지 않고 "장바구니에 담기"버튼을 제거하십시오.

"장바구니에 추가"버튼을 제거하는 동안 누구나 어떻게 "추가 기능"을 다시 추가 할 수 있는지 통찰력을 제공 할 수 있습니까?

add_action('woocommerce_single_product_summary', 'remove_add_to_cart_buttons', 1); 

function remove_add_to_cart_buttons() { 
    remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30); 
} 

답변

1

WooCommerce 제품 추가 기능은 모든 추가 기능을 표시 woocommerce_before_add_to_cart_button 액션 훅을 필요 : 여기

내가 '장바구니에 추가'버튼을 제거해야하지만,뿐만 아니라 추가 기능을 제거하는 것입니다 필드 및 데이터.

아래의 코드는 간단하고 다양한 제품에 사용할 수 있으며 장바구니 추가 및 수량 필드를 제거하여 제품 추가 기능 필드 및 데이터를 표시 할 수 있도록합니다.

add_action('woocommerce_single_product_summary', 'remove_add_to_cart_buttons', 1); 
function remove_add_to_cart_buttons() { 
    global $product; 

    // For simple product types 
    if($product->is_type('simple')) { 
     remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30); 
     add_action('woocommerce_single_product_summary', 'custom_before_single_add_to_cart', 30); 
    } 
    // For variable product types (keeping attribute select fields) 
    elseif($product->is_type('variable')) { 
     remove_action('woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20); 
    } 
} 
function custom_before_single_add_to_cart(){ 
    global $product; 

    if (! $product->is_purchasable()) return; 

    // Simple Products 
    if ($product->is_in_stock()) { 
     do_action('woocommerce_before_add_to_cart_form'); // (Optional) 

     echo '<form class="cart" method="post" enctype="multipart/form-data">'; // (Optiona 

      ## @since 2.1.0. 
      do_action('woocommerce_before_add_to_cart_button'); // <== NEEDED by Add-ons 

      ## @since 3.0.0. 
      do_action('woocommerce_before_add_to_cart_quantity'); // Optional 

      ## @since 3.0.0. 
      do_action('woocommerce_after_add_to_cart_quantity'); // Optional 

      ## @since 2.1.0. 
      do_action('woocommerce_after_add_to_cart_button'); // Optional 

     echo '</form>'; // Optional 

     do_action('woocommerce_after_add_to_cart_form'); // Optional 
    } 
} 

코드는 플러그인 파일도 function.php의 활성 자식 테마 (또는 테마)의 파일이나 간다.

테스트를 거쳐 작동합니다. 추가로

장바구니에 담기 버튼을 제거하려면 추가 기능 데이터

+0

가 감사를 제출할 수 없습니다! 이것은 내가 찾고 있었던 바로 그 것이었다. 모든 도움을 주셔서 감사합니다 !!! –