Crear un campo personalizado de cliente en el checkout

Koletta

Dseda
Verificación en dos pasos desactivada
¡Usuario con pocos negocios!
Desde
10 Dic 2012
Mensajes
1.118
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.
 

amfro

Beta
Verificación en dos pasos desactivada
Usuario nuevo
¡Usuario con pocos negocios!
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 desactivada
¡Usuario con pocos negocios!
Desde
10 Dic 2012
Mensajes
1.118
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 desactivada
¡Usuario con pocos negocios!
Desde
10 Dic 2012
Mensajes
1.118
Nadie que sepa como hacerlo o el error de que no se guarde el campo?
 

Koletta

Dseda
Verificación en dos pasos desactivada
¡Usuario con pocos negocios!
Desde
10 Dic 2012
Mensajes
1.118
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.
 

Crea una cuenta o accede para comentar

Debes ser un miembro para poder comentar

Crear cuenta

Crea una cuenta en nuestra comunidad

Acceder

¿Ya tienes una cuenta? Accede aquí


Arriba