1. Inicio
  2. Base de Conocimientos
  3. WooCommerce Wholesale Lead Capture
  4. Registro
  5. Cómo agregar la selección de rol mayorista al formulario de registro mayorista

Cómo agregar la selección de rol mayorista al formulario de registro mayorista

¿Quieres que los clientes mayoristas elijan su propio rol al registrarse? Si tu tienda utiliza múltiples roles mayoristas, por ejemplo, un rol de cliente mayorista estándar y un rol mayorista VIP, puedes añadir un desplegable de selección de rol a tu formulario de registro. Utiliza un campo personalizado y un pequeño fragmento de PHP. Esta guía te muestra cómo.

Requisitos previos

  • WooCommerce Wholesale Prices Premium está activo, con al menos dos roles mayoristas creados en Mayorista > Roles.
  • WooCommerce Wholesale Lead Capture está activo.
  • Tienes acceso al archivo functions.php del tema hijo o a un plugin de fragmentos de código.

Cómo funciona

Por defecto, WWLC asigna a cada cliente potencial aprobado el mismo rol, el que esté configurado en Mayorista > Ajustes > Captura de Clientes Potenciales Mayoristas > General > Rol de Nuevo Cliente Potencial. El fragmento de código a continuación permite a un registrador elegir su propio rol desde un desplegable que configuras como campo personalizado, y almacena su elección para que WWLC la aplique cuando lo apruebes.

Paso 1 — Crear el campo personalizado de selección de rol

Ve a Mayorista > Ajustes > Captura de Clientes Potenciales Mayoristas > Formulario de Registro. En Campos de Registro, haz clic en Añadir Campo Personalizado y añade un nuevo campo de tipo Seleccionar con el ID de campo wwlc_cf_select_role.

Tabla de Campos de Registro en WWLC mostrando el campo Select wwlc_cf_select_role

Para cada opción del desplegable, establece el valor como la clave del rol (la clave meta) para ese rol mayorista. Por ejemplo, si tienes un rol con la clave wholesale_customer y un rol VIP con la clave wholesale_vip, los valores de tus opciones deberían ser wholesale_customer y wholesale_vip respectivamente. La etiqueta de la opción puede ser cualquier cosa. Es lo que ve el registrador.

Opciones del campo personalizado Seleccionar rol configuradas en las claves de rol wholesale_customer y wholesale_vip

Paso 2 — Añadir el fragmento de PHP

Añade el siguiente código al archivo functions.php de tu tema hijo, o utiliza un plugin de fragmentos de código:

add_action( 'wwlc_action_after_create_wholesale_lead', 'wwlc_set_role_from_custom_field' );

function wwlc_set_role_from_custom_field( $new_lead ) {
    $selected_role = get_user_meta( $new_lead->ID, 'wwlc_cf_select_role', true );

    if ( ! empty( $selected_role ) ) {
        update_user_meta( $new_lead->ID, 'wwlc_custom_set_role', sanitize_text_field( $selected_role ) );
    }
}

Este fragmento se ejecuta después de que se crea un nuevo cliente potencial. Lee el valor del desplegable de selección de rol (almacenado en meta de usuario como wwlc_cf_select_role) y lo guarda como wwlc_custom_set_role. Esta es la clave meta interna que WWLC comprueba al asignar un rol en la aprobación.

Paso 3 — Probar el formulario de registro

Una vez que el campo personalizado y el fragmento estén en su lugar, visita tu página de registro mayorista. Deberías ver el desplegable de selección de rol en el formulario. Registra una cuenta de prueba, selecciona un rol, luego aprueba al usuario en Mayorista > Clientes Potenciales. La cuenta aprobada debería tener el rol que el registrador seleccionó, no el rol por defecto.

Preguntas frecuentes

¿Qué pasa si el registrador no selecciona un rol?

Si el desplegable se deja en blanco o el valor del campo personalizado está vacío, WWLC recurre al rol por defecto establecido en Mayorista > Ajustes > Captura de Clientes Potenciales Mayoristas > General > Rol de Nuevo Cliente Potencial.

¿Puedo usar un ID de campo personalizado diferente?

Sí. Si utilizas un ID de campo diferente, actualiza la clave wwlc_cf_select_role tanto en la devolución de llamada de add_action como en la llamada a get_user_meta para que coincida con tu ID de campo.

¿Necesitas ayuda?

Si tienes alguna pregunta o encuentras algún problema, estamos aquí para ayudarte.

¿Te ha resultado útil este artículo?

Artículos relacionados

Completa tu Compra