Eliminar los valores de los campos de pago de WooCommerce

3 minutos de lectura

avatar de usuario
elimariaaaa

estoy tratando de aplicar autocomplete="off" en mis campos de pago de WooCommerce pero simplemente no funciona.

¿Hay alguna manera de hacer eso para el formulario de pago?

Revisé los documentos y no hay nada disponible allí. También intenté establecer el valor predeterminado en vacío, pero tampoco funciona. Esto es cuando el usuario no ha iniciado sesión, por supuesto.

ingrese la descripción de la imagen aquí

ACTUALIZAR:

Lo intenté unset como lo sugirió @smvax pero no funcionó tan bien.

add_filter('woocommerce_checkout_fields', 'default_values_checkout_fields');
function default_values_checkout_fields($fields) {
  if (!is_user_logged_in()) {
      unset($fields['billing_city']);
      unset($fields['billing_first_name']);
      unset($fields['billing_last_name']);
      unset($fields['billing_company']);
      unset($fields['billing_address_1']);
      unset($fields['billing_address_2']);
      unset($fields['billing_city']);
      unset($fields['billing_postcode']);
      unset($fields['billing_country']);
      unset($fields['billing_state']);
      unset($fields['billing_email']);
      unset($fields['billing_phone']);
      unset($fields['shipping_city']);
      unset($fields['shipping_first_name']);
      unset($fields['shipping_last_name']);
      unset($fields['shipping_company']);
      unset($fields['shipping_address_1']);
      unset($fields['shipping_address_2']);
      unset($fields['shipping_postcode']);
      unset($fields['shipping_country']);
      unset($fields['shipping_state']);
      return $fields;
  }
}

yo también probé la respuesta aquí pero no está funcionando tan bien.

Gracias

  • ¿Nkatry ka na nito jeepers? 🙂 stackoverflow.com/questions/36694355/…

    – smzapp

    10 de abril de 2017 a las 4:00

  • @smzvax lo acabo de intentar unset y todo el formulario desapareció.

    – elimariaaaa

    10 de abril de 2017 a las 4:41

  • que tal agregar [‘clear’] como se muestra aquí: sorpresaazwebservices.com/edit-woocommerce-checkout-fields

    – smzapp

    10 de abril de 2017 a las 4:58

  • @jeepers_creepers, ¿dónde estás agregando el AUTOCOMPLETE = "off" atributo ?

    – Mayank Raj

    10 de abril de 2017 a las 5:04

  • @MayankRaj en el <form>

    – elimariaaaa

    10 de abril de 2017 a las 5:11

avatar de usuario
LoicTheAztec

Puedes usar WordPress '__return_empty_string' con woocommerce_checkout_get_value El gancho de filtro de WooCommerce para obtener valores vacíos simplemente de esta manera:

add_filter('woocommerce_checkout_get_value','__return_empty_string', 1, 1);

Esto vaciará todos los valores de pago, cuando se cargue la página de pago.

El código va en el archivo functions.php de su tema secundario activo (o tema) o también en cualquier archivo de complemento.

Este código está probado y funciona.

Debe restablecer todas las sesiones existentes en la configuración de Woocommerce> Estado del sistema> herramientas y también el caché si su comercio electrónico usa alguno.
También vacíe el caché de su navegador y los datos almacenados.

Relacionado: borre solo algunos valores de los campos de pago en Woocommerce

  • gracias por su respuesta, pero no funciona cuando lo probé. Lo agregué en el archivo functions.php de mi tema hijo. Mi URL de pago: dfp-dev.creativequoin.com/checkout/?v=4e45c2af0995

    – elimariaaaa

    10 de abril de 2017 a las 9:25

  • @jeepers_creepers He probado este código en 3 sitios web diferentes de WooCommerce y funciona en todos ellos. Entonces, ciertamente hay algún código personalizado en su tema o en un complemento de terceros, que está creando un conflicto… He cambiado la prioridad en mi enlace (código). Pruébalo otra vez. Espero que funcione como debe. Puedes probarlo aquí en mi servidor de prueba sin formato: cbleu.net/sites/tie/tienda (Compre algo, luego, después de su primer pedido, agregue algo al carrito y vaya a la caja… no verá datos en los campos de la caja).

    – LoicTheAztec

    10 de abril de 2017 a las 10:38


  • funcionó cuando lo agregué en mi complemento Woocommerce personalizado. ¡Gracias!

    – elimariaaaa

    28 de abril de 2017 a las 3:59

Puede establecer autocompletar=”desactivado” para los campos del formulario utilizando el filtro woocommerce_checkout_fields.

    add_filter('woocommerce_checkout_fields', 'autocomplete_off_checkout_fields');
    function autocomplete_off_checkout_fields($fields) {
          $fields['billing_first_name']['autocomplete'] = 'off';
          return $fields;
      }
    }

Esto funcionará en todos los campos de pago de woocommerce.

  • Tenga en cuenta que los navegadores Chrome ignorarán intencionalmente el valor “desactivado” y seguirán aplicando el autocompletado en función de lo que el usuario haya agregado a Chrome, es decir, datos de pago o direcciones.

    – Sven

    6 sep 2021 a las 16:10

¿Ha sido útil esta solución?