Avisos
Vaciar todo

No dejar comprar usuarios rol visitante  

Página 2 / 2
 
ALBERTO
 ALBERTO
Noble Member

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....

 

Screenshot 2022 06 09 at 14.38.12

 

 

Contenido solo visible a usuarios registrados

Citar
Respondido : 09/06/2022 1:39 pm
ALBERTO
 ALBERTO
Noble Member

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ó?

ResponderCitar
Respondido : 10/06/2022 8:13 am

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

ALBERTO
 ALBERTO
Noble Member

He pensado en poner como página de inicio la página de mi cuenta... así el usuario tendrá que registrarse para acceder....

ResponderCitar
Respondido : 10/06/2022 8:14 am
ALBERTO
 ALBERTO
Noble Member

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 );
ResponderCitar
Respondido : 10/06/2022 10:12 am

ALBERTO
 ALBERTO
Noble Member

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>';
}
ResponderCitar
Respondido : 10/06/2022 10:45 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

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

ResponderCitar
Respondido : 10/06/2022 11:04 am

Cursos Gratuitos WordPress

Página 2 / 2