Al trabajar con Woocommerce y al ser una tienda virtual que se integra con facilidad a WordPress, su uso puede resultar familiar para muchos usuarios, en este caso clientes que tienen productos físicos o virtuales y los quieren vender en linea.
Existen negocios que quieren ocultar precios a usuarios que no tienen una cuenta con ellos o no han iniciado una sesión. Esto es por que aún no se interesan en sus productos, por ejemplo, en el sector joyero, se da el caso de querer dar una sensación de exclusividad al no mostrar los precios como en el ejemplo de la imagen de abajo.
Ya sea que tengas un caso similar o no, pero quieres ocultar los precios de tus productos a usuario no registrados o que no tengan una sesión activa en tu sitio web.
Lo que tienes que hacer es pegar el siguiente código en tu archivo functions.php de tu tema hijo.
El código de PHP, remueve el botón de agregar al carrito y el precio en la página de la tienda y en single product page.
add_action( 'init', 'plab_hide_price_add_cart_not_logged_in' );
function plab_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_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
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', 'plab_print_login_to_see', 31 );
add_action( 'woocommerce_after_shop_loop_item', 'plab_print_login_to_see', 11 );
}
}
function plab_print_login_to_see() {
echo '<a href="' . get_permalink(wc_get_page_id('myaccount')) . '">' . __('Inicia sesión para ver precios', 'theme-name') . '</a>';
}
Fuente: WooCommerce: Hide Price & Add to Cart for Logged Out Users
0 Comments