De repente se muestra el botón comprar a los visitantes, usuarios no registrados...tenía colocado un código para que ese botón no se mostrara...es decir quitar la posibilidad de compra a visitantes....
Contenido solo visible a usuarios registrados
Mientras se soluciona el código...no puedo mantener en mantenimiento por más tiempo la web....y si la abro no puedo permitir que visitantes vean precios y puedan comprar...por lo que tener que instalar un plugin para que sólo sea accesible logueándose....para hacer esto ¿que plugin instaló?
He pensado en poner como página de inicio la página de mi cuenta... así el usuario tendrá que registrarse para acceder....
Este es el hook que siguiendo un tutoría debería quitar el botín de añadir a carrito en la página de producto....pero no me funciona...
'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
También he probado este código de Ayuda Wordpress y oculta el precio pero no el carrito de compra:
/** Oculta precio y añadir al carrito a usuarios no conectados **/ add_action('init', 'ayudawp_hide_price_add_cart_not_logged_in'); function ayudawp_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', 'ayudawp_print_login_to_see', 31 ); add_action( 'woocommerce_after_shop_loop_item', 'ayudawp_print_login_to_see', 11 ); } } function ayudawp_print_login_to_see() { echo '<a href="' . get_permalink(wc_get_page_id('myaccount')) . '">' . __('Accede para ver los precios', 'theme_name') . '</a>'; }
Hola Alberto.
Prueba con la siguiente función:
add_filter( 'woocommerce_get_price_html', 'bbloomer_hide_price_addcart_not_logged_in', 9999, 2 );
function bbloomer_hide_price_addcart_not_logged_in( $price, $product ) {
if ( ! is_user_logged_in() ) {
$price = '<div><a href="' . get_permalink( wc_get_page_id( 'myaccount' ) ) . '">' . __( 'Login to see prices', 'bbloomer' ) . '</a></div>';
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 );
}
return $price;
}
Un saludo