• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Plugins / Registrar usuarios sólo para la compra de ciertos productos en WooCommerce

Registrar usuarios sólo para la compra de ciertos productos en WooCommerce

[ 26 diciembre 2023 ] [ Actualizado: 3 enero 2024 ]
[ Autor: Jhon Marreros Guzmán ][ Plugins - Intermedio] [ ]

funcionalidad woocommerce

Suscríbete a DecodeCMS:  

En algunas ocasiones es posible que tengas una tienda en donde para algunos productos requieras que un usuario se registre, sin embargo para otros productos se podría realizar la compra como usuario invitado.

 

Generalidades

Veremos como tener una doble configuración para la compra de productos en WooCommerce, por defecto dejaremos la tienda habilitada para la compra de usuarios invitados, sin embargo para ciertos productos requeriremos el registro de usuarios.

Comprar como invitado en WooCommerce

 

Código para solicitar registro al comprar ciertos productos

El siguiente código puedes agregarlo como parte de tu archivo functions.php de tu tema hijo.

add_filter( 'woocommerce_checkout_registration_required', 'dcms_checkout_registration_required', 10, 1 );
function dcms_checkout_registration_required( $bool_value ) {
    // IDs de productos que requieren registro
    $product_ids = array ( 2704 );
    
	if ( ! WC()->cart ) return $bool_value;

	// Recorremos los ítems del carrito
    foreach ( WC()->cart->get_cart() as $cart_item ) {
        // Si el producto se encuentra dentro del array de $product_ids, 
		// entonces se requiere registro
        if ( in_array( $cart_item['product_id'], $product_ids ) ) {
            $bool_value = true;
            break;
        }
    }	

    return $bool_value;
}

 
En el código anterior:

  • Utilizamos el Hook woocommerce_checkout_registration_required que hace referencia a la función dcms_checkout_registration_required
  • Definimos un array $product_ids, donde colocamos los Ids de los productos que requieren que el usuario este registrado
  • Hacemos una validación para saber si el objeto existe WC()->cart
  • Si existe recorremos el objeto de carrito y comprobando si algún ítem se encuentra restringido
  • Si el producto requiere un usuario conectado entonces devolvemos el parámetro $bool_value en true

 

Conclusión

Como has podido comprobar, puedes habilitar tu sitio para que se pueda comprar sin registrase, sin embargo para ciertos productos específicos, puedes requerir que sólo los compren usuarios que se encuentren registrados.

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Mostrar contenido solo a usuarios que compraron un producto en WooCommerceMostrar contenido solo a usuarios que compraron un producto en WooCommerce
  • Deshabilitar métodos de pago en WooCommerce según el total de pedidoDeshabilitar métodos de pago en WooCommerce según el total de pedido
  • Categoría padre en las clases del body de un producto de WooCommerceCategoría padre en las clases del body de un producto de WooCommerce
  • Crear productos por programación en WooCommerceCrear productos por programación en WooCommerce
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (1 votos, promedio: 5,00 de 5)
Cargando...

Interacciones con los lectores

Comentarios

  1. JimmyRom

    7 febrero, 2024

    Good luck 🙂

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Omnisend
Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad SEO social woocommerce

Populares

Código para procesamiento por lotes en WordPress

Modificar el mensaje de notificación de comentarios en WordPress

Agregar banner automáticamente en el contenido de WordPress

Leer más y Extracto en WordPress

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2026 Todos los derechos reservados