Ocultar los precios a usuarios no registrados en WooCommerce

Snippet que sirve para ocultar los precios a usuarios no registrados en WooCommerce. Si no están registrados aparecerá el texto “Debes estar registrado para ver los precios”. Podrán navegar por la tienda en modo catálogo, pero no podrán comprar ni ver los precios hasta que no se registren.

 

Snippet para ocultar los precios a usuarios no registrados en WooCommerce

// Oculta el precio de los productos para usuarios no registrados
add_action( 'init', 'wdm_hide_price_add_cart_not_logged_in' );
function wdm_hide_price_add_cart_not_logged_in() { 

	if ( !is_user_logged_in() ) {  

		remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
		remove_action( 'woocommerce_simple_add_to_cart', 'woocommerce_simple_add_to_cart', 30 );
		remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation', 10 );
		remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );
		remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );
		remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );  
		add_action( 'woocommerce_single_product_summary', 'wdm_print_login_to_see', 31 );
		add_action( 'woocommerce_after_shop_loop_item', 'wdm_print_login_to_see', 11 );
	}
}

function wdm_print_login_to_see() {

	if ( !is_home() ){

		echo '<a href="' . get_permalink( woocommerce_get_page_id('myaccount') ) . '" class="hide-product-price">Debes estar registrado para ver los precios</a>';
	}
}

 

Ver más tutoriales de: WooCommerce

Tutoriales relaccionados

¿Necesitas un desarrollo a medida?

Login para aceder

LOGIN
REGISTRO