Crear un campo personalizado de cliente en el checkout

Koletta

Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta o intermediario gratuito!
Desde
10 Dic 2012
Mensajes
1.125
Hola Betas,

Llevo unos días peleándome con algo que a priori no debería dar muchos problemas. Necesito incluir el género del cliente en el checkout de Woocommerce. Tan simple como un radio button con Hombre y Mujer.
Encontré este post de Iconic que me parece excelente (The Ultimate Guide to Adding Custom WooCommerce Registration Fields) y lo seguí paso a paso pero no consigo que el campo se guarde en el perfil del usuario. Incluso me enviaron el código como plugin y me pasa lo mismo: se muestra en el checkouk pero está vacío en el perfil.

Alguien podría echarme una mano. Ya no se que hacer.

Muchas gracias.
 

Accesito

Delta
Verificación en dos pasos desactivada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta o intermediario gratuito!
Desde
24 Dic 2014
Mensajes
697

amfro

Beta
Verificación en dos pasos desactivada
Usuario nuevo
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta o intermediario gratuito!
Desde
11 Mar 2021
Mensajes
40
En los ajustes del checkout te aparece para añadir campos nuevos
 

Koletta

Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta o intermediario gratuito!
Desde
10 Dic 2012
Mensajes
1.125
Ya había visto esta pregunta y la tengo aplicada en la web pero no es lo que estoy buscando. En este caso el campo se asocia al pedido y yo lo quiero en el perfil del usuario.
 

Koletta

Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta o intermediario gratuito!
Desde
10 Dic 2012
Mensajes
1.125
Nadie que sepa como hacerlo o el error de que no se guarde el campo?
 

Koletta

Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta o intermediario gratuito!
Desde
10 Dic 2012
Mensajes
1.125
Al final he conseguido solucionarlo. Paso el código por si a alguien le sirve en el futuro.

Estaba utilizando un action y la clave era filter:
Insertar CODE, HTML o PHP:
add_filter('woocommerce_checkout_fields', 'jrc_custom_woocommerce_billing_fields');

function jrc_custom_woocommerce_billing_fields($fields)
{
    $fields['billing']['billing_genero'] = array(
        'label' => __('Genero', 'woocommerce'), 
        'required' => false, 
        'clear' => false, 
        'type' => 'radio', 
        'class' => array('genero'),   
        'options' => array(
            'Mujer' => __( 'Mujer', 'jrcode' ),
            'Hombre' => __( 'Hombre', 'jrcode' ),
        )
    );

    return $fields;
}

Con este filtro añadimos el campo a los datos de facturación en el checkout y se guarda automáticamente al procesar el formulario.
 

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros, intermediario gratis
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí


Arriba