답변:
운 좋게 woocommerce는 많은 고리를 가지고 있습니다. 이것은 가격과 버튼을 제거합니다.
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart' );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );
당신은 파고 수 content-product.php
및 content-single-product.php
더 많은 물건을 제거해야합니다.
숨기거나 제거하려는 가격 / 버튼 (페이지 / 기능과 같은) 이상이 있다고 생각할 수 있습니다. 이 자습서 에서는 몇 가지 포인터를 제공합니다.
?>
. 이렇게하면 장바구니 페이지가 제거되지는 않지만 실제로 장바구니에 무언가를 추가 할 가능성이 제거됩니다. 카트 페이지가 마음에 들지 않으면 비교적 안전해야합니다.
위의 코드를 확장하면 (Ewout 덕분에) 다음 코드는 모든 가격을 제거하고 모든 woocommerce 제품의 '장바구니에 추가'버튼을 제거하고 이유에 대한 설명을 제공합니다. 직접 판매 제품을 제공하고 규칙을 준수하는 웹 사이트 코드가 필요했는데, 일반 대중에게 가격을 표시 할 수 없습니다.
테마의 functions.php 파일에 필터를 추가하십시오.
add_filter('woocommerce_get_price_html','members_only_price');
function members_only_price($price){
if(is_user_logged_in() ){
return $price;
}
else {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart' );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );
return 'Only <a href="' .get_permalink(woocommerce_get_page_id('myaccount')). '">Registered Users</a> are able to view pricing.';
}
}
3.2.1
:-) 에서 작동하지 않습니다