Eliminar campos de registro de la página de pago en woocommerce

4.9/5 - (17 votos)

Página de pago en Woocommerce

Sabemos que woocommerce es uno de los plugins más utilizados para el comercio electrónico, cuando utilizamos el CMS de wordpress. Es utilizado por múltiples sectores del comercio electrónico, por lo que en más de un proyecto se te presentará el caso de que no quieras mostrar todos los campos de registro, que solicita woocommerce por defecto.

Al instalar woocommerce en nuestro web con wordpress, este crea por defecto unas páginas necesarias para el funcionamiento de la tienda, páginas tales como, “Cart, Checkout, My account, Shop”, estás funcionan con un simple shortcode insertado dentro de la página.

Ahora vamos ha centrarnos en la página final de pago, denominada “Checkout”, es donde se realiza el registro de la cuenta o inicio de sesión, la selección del transportista y el método de pago. Por defecto, el registro de la cuenta tiene los siguientes campos a rellenar:

  • Nombre
  • Apellidos
  • Nombre de la Empresa
  • Dirección 1
  • Dirección 2
  • Código postal
  • Localidad / Ciudad
  • Provincia
  • Teléfono
  • Correo Electrónico
  • Notas del Pedido

En los ajustes de woocommerce, no existe ninguna función para desactivar estos campos, entonces, para poder quitar campos que no necesitamos, podemos utilizar dos procedimiento.s Usar un plugin o de forma manual, usando un código dentro del archivo functions.php de nuestro theme.

Eliminar campo de registro de forma manual.

Para este método, vamos hacer uso de los hooks disponibles que tiene woocommerce, en su programación. Así que necesitaremos insertar el siguiente código en el archivo functions.php de tu tema activado. Este código, desactiva todos los campos de registro, por lo que deberás copiar y pegar este código, y eliminar o comentar las líneas de los campos que quieras que continúen apareciendo.

<?php
 
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
 
function custom_override_checkout_fields( $fields ) {
    unset($fields['billing']['billing_first_name']);
    unset($fields['billing']['billing_last_name']);
    unset($fields['billing']['billing_company']);
    unset($fields['billing']['billing_address_1']);
    unset($fields['billing']['billing_address_2']);
    unset($fields['billing']['billing_city']);
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_country']);
    unset($fields['billing']['billing_state']);
    unset($fields['billing']['billing_phone']);
    unset($fields['order']['order_comments']);
    return $fields;
}

Eliminar campo de registro usando un plugin.

Si meterle mano a partes de código te resulta complicado, puedes recurrir a un plugin que te hará el proceso mucho más fácil “WooCommerce Checkout Manager
 

Instala el plugin y asegúrate de activarlo. Una vez activo, dirígete a «Ajustes«> «WooCommerce Pedido Director«. Ahora desde esta página, ya puedes eliminar campos y atributos.

Como podrás comprobar, este método es mucho más sencillo, pero como siempre, recomendamos intentar hacer uso, del menor número de plugin, siempre que se pueda evitar, así que ahora ya sabes que hacer, solo debes escoger el método que se te adapte mejor.

Compartir esta noticia :

8 respuestas

  1. Gracias, me has salvado la vida. Pensaba que esa opcion venia por defecto en woocommerce, pero veo que no. Mr ha ido de fábula las lineas esas de código en el functions.php

    1. Hola, Cristian. Para lo que comentas sería tan simple como sustituir la palabra «billing» por «shipping», para la linea del código.
      Así que si quisieras quitar el campo de «Nombre de empresa» (algo muy innecesario para este apartado) quedaría de la siguiente manera:

      unset($fields[‘shipping’][‘shipping_company’]);

      Gracias por tu comentario y un saludo!

  2. por alguna razon noi puedo ver cuano escribo Entonces tuve que escribir copiar y pegar desde word, por cierto me sirvio el codigo muy bien, estube buscando un anuncio para dar la gracias pero no encontre ninguno en su web
    .

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¿Tienes alguna pregunta?

Llámanos o escríbenos para cualquier duda que tengas al número o correo indicados abajo.