Personalizar los campos obligatorios del checkout o compra de WooCommerce

Cuando vas a comprar en Woocommerce hay ciertos campos de registro obligatorios para realizar el checkout. Hoy os enseñamos cómo modificar dichos campos.

Personalizar los campos obligatorios en el checkout de WooCommerce.

Como viene siendo habitual, os dejamos dos maneras de hacerlo:

  1. Con plugins. Os dejamos tres de los más usados. El modo de hacerlo es similar en los tres. Escogemos la sección y ahí decidimos qué campos queremos que sean obligatorios. En alguno tienes que crear el campo  y luego definir su obligatoriedad o no.

    Flexible Checkout Fields for WooCommerce
    – WooCommerce Checkout Manager
    Checkout Field Editor (Checkout Manager) for WooCommerce

     

Aquí os dejamos cómo usar el primero.

  1. Puedes modificar los campos a través de un plugin o poniendo código en functions.php o en un Snippet. Personalmente creo que para este caso es mejor usar plugins, pero por si lo necesitas, aquí lo tienes.
    La información la tienes en este artículo de WooCommerce. Vas a tener que “jugar” un poco hasta encontrar los campos que quieres y cómo modificarlos, pero te dejamos un par de ejemplos de gente que lo ha hecho para que veas el código.

     

    Ejemplo de poner campos como obligatorios y quitar otros.
    Deshabilitar la validación de campos (no se si es necesario).

    Ejemplo de Snippets.
//Poner en readonly todos los campos del checkout
add_filter( 'woocommerce_checkout_fields' , 'read_only_checkout_fields' );
function read_only_checkout_fields( $fields ) {
    $fields['billing']['billing_first_name']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_last_name']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_company']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_phone']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_address_1']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_address_2']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_city']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_postcode']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_country']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_state']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_address_2']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_postcode']['custom_attributes'] = array('readonly'=>'readonly');
    $fields['billing']['billing_email']['custom_attributes'] = array('readonly'=>'readonly');

    return $fields;
}

// WooCommerce Remove Required Checkout Fields
add_filter( 'woocommerce_checkout_fields' , 'custom_wc_checkout_fields_required' );
function custom_wc_checkout_fields_required( $fields ) {
  $fields['billing']['billing_phone']['required'] = false;
  $fields['billing']['billing_first_name']['required'] = false;
  $fields['billing']['billing_last_name']['required'] = false;
  $fields['billing']['billing_company']['required'] = false;
  $fields['billing']['billing_address_1']['required'] = false;
  $fields['billing']['billing_address_2']['required'] = false;
  $fields['billing']['billing_city']['required'] = false;
  $fields['billing']['billing_postcode']['required'] = false;
  $fields['billing']['billing_country']['required'] = false;
  $fields['billing']['billing_state']['required'] = false;
  $fields['billing']['billing_phone']['required'] = false;
  $fields['billing']['billing_postcode']['required'] = false;
  $fields['billing']['billing_company']['required'] = false;
  $fields['billing']['billing_email']['required'] = false;
  return $fields;
}

Deja un comentario

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

Resumen de nuestra Política de Privacidad

  • Responsable: SmythSys IT Consulting SLNE.
  • Finalidad: Gestionar y moderar los comentarios.
  • Legitimación: Necesitas dar tu consentimiento para publicar un comentario.
  • Destinatarios: Tus datos se alojan en los servidores de OVH.
  • Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos en la dirección del responsable (en nuestra política de privacidad).

Scroll al inicio