Cómo sincronizar el nombre y apellidos de usuario de WooCommerce con el de WordPress

¿Te has fijado que cuando un usuario registrado en tu sitio WordPress hace un pedido con un nombre diferente o cambia sus datos aparecen distintos nombres en varias partes de la web?

Seguro que te ha pasado también incluso a ti, haciendo pruebas, y empiezas a tener problemas de identidad 😀

Como bien explica Rodolfo, esto es debido a que cuando un usuario hace un pedido en una tienda online creada con WooCommerce, hay una función (process_customer) que guarda el nombre y apellidos usados en la dirección de facturación del cliente al pagar, y esta función sobrescribe el nombre y apellidos del usuario de WordPress.

Pasa lo mismo cuando el usuario actualiza la dirección de facturación a través de la pestaña de dirección en la página de «Mi cuenta». En este caso es la función de WooCommerce save_address la que copia el nombre y apellidos de facturación al nombre y apellido del usuario de WordPress.

Pero ahí no acaba la cosa, porque si cambia el nombre y apellidos en la página de su perfil de WordPress, resulta que no se actualizan, siguiendo sin sincronizar sus datos de usuario de WordPress con los de facturación de WooCommerce.

Vaya lío ¿no?

Menos mal que tiene fácil arreglo, con un poquito de código, que acabará con esta locura, forzando la sincronización del nombre y apellidos de los usuarios, en WordPress y WooCommerce, este:

/* Sincronizar nombre y apellidos usuarios WP y Woo */
add_filter( 'pre_user_first_name', 'ayudawp_sincronizar_nombre_usuario_wp_woo' );
function ayudawp_sincronizar_nombre_usuario_wp_woo( $first_name ) {
if ( isset( $_POST['billing_first_name'] ) ) {
$first_name = $_POST['billing_first_name'];
}
return $first_name;
}
add_filter( 'pre_user_last_name', 'ayudawp_sincronizar_apellidos_usuario_wp_woo' );
function ayudawp_sincronizar_apellidos_usuario_wp_woo( $last_name ) {
if ( isset( $_POST['billing_last_name'] ) ) {
$last_name = $_POST['billing_last_name'];
}
return $last_name;
}

Guarda los cambios y ahora ya se sincronizarán el nombre y apellidos de usuario de WordPress y WooCommerce.

¿Dónde y cómo añado el código?

Si no sabes cómo o dónde añadir este código revisa esta sencilla guía:

Cómo y dónde pegar en WordPress códigos PHP, JS, CSS y funciones que encuentres por ahí

 

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en los emoticonos para valorarlo!

Promedio de puntuación 5 / 5. Total de votos: 7

Hasta ahora ¡no hay votos!. Sé el primero en valorar este contenido.

Ya que has encontrado útil este contenido...

¡Sígueme en los medios sociales!

¡Siento que este contenido no te haya sido útil!

¡Ayúdame a mejorar este contenido!

Por favor, dime, ¿cómo puedo mejorarlo?

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

Sobre el autor

3 comentarios en “Cómo sincronizar el nombre y apellidos de usuario de WooCommerce con el de WordPress”

  1. Muchas gracias Fernando por el excelente contenido y explicación que es de gran ayuda. Solo tengo una consulta, sabrás si hay alguna forma en el caso que quiera configurar woocommerce para una academia online con learndash donde sean empresas que compran los cursos para los trabajadores? es decir, que haya un campo para el email de facturación del curso (que seria de la empresa) y otro campo distinto al email del alumno al que si se le abriría la cuenta en wordpress y learndash para que obtenga su certificado final de dicho curso. Cómo configurar esa separación? Muchas gracias!

    1. Eso es ajeno a Learndash o cualquier otra cosa, deberías personalizar entonces los campos de finalizar compra para incluir los campos deseados y que se apliquen a lo que tú quieras, eligiendo que el usuario y contraseña sea el del usuario y no el del que paga.

Deja un comentario

Tu dirección de correo electrónico no será publicada.

Información base sobre privacidad:
  • Responsable: Fernando Tellado ([email protected])
  • Fin del tratamiento: Moderación de comentarios para evitar spam
  • Legitimación: Tu consentimiento
  • Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
  • Derechos: Acceso, rectificación, portabilidad, olvido

 

Ir arriba
Ir al contenido