Cómo deshabilitar la opción Enviar a otra dirección

Publicado: 2022-01-01

WooCommerce deshabilite la opción Enviar a otra dirección WooCommerce es una gran solución gratuita de comercio electrónico, que tiene un conjunto de características increíblemente útiles. Lo que destaca es que WooCommerce está desarrollado teniendo en cuenta la extensibilidad, similar a la modularidad de WordPress.

Esta publicación contiene dos partes diferentes. En la primera parte, compartiré contigo cómo puedes eliminar por completo todos los campos de envío, obligando al cliente a enviar su pedido a la dirección de facturación. En la segunda sección, le mostraré cómo eliminar la opción 'Enviar a otra dirección' y obligar al cliente a ingresar una dirección de facturación y otra de envío.

Deshabilitar la opción Enviar a otra dirección

Si su tienda WooCommerce solo permite el envío a la dirección de facturación de los clientes, las opciones adicionales para ingresar los campos de envío no son necesarias. Sin embargo, WooCommerce por defecto tiene una opción para eliminar fácilmente los campos de envío, sin necesidad de un fragmento de código.

Sin embargo, aquí están los requisitos previos:

  • WordPress (asumiendo que ya lo tienes instalado).
  • Complemento WooCommerce (Instalado y activado).

Dicho todo esto, sumerjámonos en el meollo de este artículo. Los pasos son muy simples y no tendrá dificultades para implementar estas soluciones.

a) Pasos para eliminar completamente los campos de envío

Estos son los pasos que debe seguir:

  1. Inicie sesión en su sitio de WordPress y acceda al Panel como usuario administrador.
  2. En el menú Panel, haz clic en WooCommerce > Configuración. Esto abrirá la página Configuración. Haga clic en la pestaña Envío y luego haga clic en Opciones de envío . Aquí verá Opciones como Cálculos y Destino de envío .
  3. En la configuración Destino de envío , use la opción 'Forzar envío a la dirección de facturación del cliente' para eliminar completamente los campos de envío y usar los campos de facturación tanto para la facturación como para el envío. Esta opción le permite controlar qué campos de pago deben usarse.

Asegúrese de guardar los cambios que realice.

  1. Para ver el resultado, diríjase a la página de pago y verá que los detalles de facturación se utilizarán para el envío. Este será el resultado:

b) Pasos para eliminar la opción 'Enviar a otra dirección' y forzar una dirección de envío

Por defecto, WooCommerce tiene una configuración. No obliga al usuario a añadir la dirección de envío por separado. Para ocultar la opción 'Enviar a otra dirección', puede obligar al cliente a comprar los productos para ingresar tanto su dirección de facturación como la de envío.

En esta sección, compartiré algunos pasos simples para hacerlo. Usaremos un código PHP para

  • Oculte la casilla de verificación "Enviar a una dirección diferente" y agregue un encabezado personalizado.
  • Forzar la dirección de envío en la validación de pago.

Estos son los pasos que debe seguir:

  1. Inicie sesión en su sitio de WordPress y acceda al Panel como usuario administrador.
  2. En el menú del panel, haga clic en Menú de apariencia > Menú del editor de temas . Cuando se abra la página del Editor de temas, busque el archivo de funciones del tema donde agregaremos la función que mostrará la imagen del producto en la página de pago. Oculte la casilla de verificación "Enviar a una dirección diferente" y agregue un encabezado personalizado.
  3. Agregue el siguiente código al archivo php :
 /**
* Oculte la casilla de verificación 'Enviar a otra dirección'.
*/

/**
* Oculte la casilla de verificación 'Enviar a una dirección diferente' / agregue un encabezado personalizado.
* Si lo desea, puede reemplazar el texto aquí.
*/

función njengah_js_force_shipping_address() {

?><script tipo="texto/javascript">

var diffAddress = document.querySelector('#enviar-a-diferente-dirección');

diffAddress.outerHTML = '<h3>Detalles de envío</h3><input type="casilla de verificación" marcada="marcada" value="1" name="enviar_a_dirección_diferente" class="hidden" style="display: none;" />';

</script><?php

}

add_action('wp_footer', 'njengah_js_force_shipping_address');

/**
* Forzar la dirección de envío en la validación de pago
*/

función njengah_force_posted_data_ship_to_ different_address ($posted_data) {

$posted_data['enviar_a_diferente_dirección'] = verdadero;

devolver $datos_publicados;
}

add_filter('woocommerce_checkout_posted_data', 'njengah_force_posted_data_ship_to_ different_address');

// Tenga en cuenta que esto anula la opción 'Destino de envío' en la configuración de Woo

add_filter('woocommerce_ship_to_ different_address_checked', '__return_true');

// Si tiene la posibilidad de pedidos solo virtuales, puede comentar esto

add_filter('woocommerce_cart_needs_shipping_address', '__return_true');

// El pedido siempre tiene envío (incluso con retiro local por ejemplo)

add_filter('woocommerce_order_needs_shipping_address', '__return_true');

  1. Para ver el resultado , dirígete a la página de pago y verás que se ha agregado una nueva sección con los detalles de la dirección de envío. Este será el resultado:

Cómo funciona el código

Primero, este código oculta la casilla de verificación 'Enviar a una dirección diferente' y puede agregar su propio encabezado personalizado. Luego fuerza una dirección de envío en la validación de pago. Además, agregué un filtro para anular la opción 'Destino de envío' en la configuración de Woo. Además, he agregado un filtro para asegurar que el pedido siempre haya sido enviado, incluso si se trata de una recogida local.

Conclusión

En este breve tutorial, he compartido cómo puede eliminar completamente los campos de envío. He compartido con usted pasos simples que debe seguir para lograr esto. Además, he compartido un fragmento de código PHP personalizado que debe agregar al archivo functions.php para eliminar la opción de envío a otra dirección y forzar una Dirección de envío. Espero que esta publicación te haya proporcionado una solución perfecta para esto.

Artículos similares