Hola @xxsakodaxx,
En la configuración general de WooCommerce hay un check que pone «Permitir la compra como invitado». Desactívalo. Al estar desactivado obliga a registrarse para terminar el pedido y no permite compras sin registro.
Un saludo
Interesante, me uno a la peticion! Solamente que quisiera que se muestre como un catalogo a los usuarios normales y si quieren ver precios y comprar que se tengan que registrar y nosotros asignarles su lista de precios o descuentos, se puede??
Por cierto @xxsakodaxx acabo de ver tu tienda y esta padrisima!!! Elegiste algun tema? Yo apenas empiezo, que tan dificl es levantar una tienda asi como la tuya?
Hola.
Con este código conviertes la tienda en catálogo para usuarios no autorizados:
add_action('after_setup_theme','user_activate_filter') ;
function user_activate_filter(){
add_filter('woocommerce_get_price_html', 'user_show_price_logged');
}
function user_show_price_logged($price){
if(current_user_can('customer') or current_user_can('editor') or current_user_can('shop_manager') or current_user_can('administrator') ){
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 '';
}
}
El filtro modifica el precio, la función se encarga de que si el usuario es un cliente, editor, encargado de tienda o administrador presente el precio y si no aparte de eliminar el precio elimina las cantidades y el botón de añadir, así que se ve un catálogo.
Cuando se registra un usuario nuevo sigue sin ver los precios hasta que le cambies el rol a cliente. Creo que es lo que querías, en caso contrario con registrarlo como cliente o cambiar el rol de cliente por usuario en el condicional lo solucionas.
Saludos
-
Esta respuesta fue modificada hace 6 años, 6 meses por
jose64. Razón: Ampliar explicación
Por cierto, me olvidaba de decirte que el tema que usa el compañero es
Extra de Elegant Themes
Pero tienes muchos temas en el repositorio que te pueden servir, puedes mirar Storefront, aparte de ser gratuito está optimizado para WooCommerce y te da mucho juego.