Da igual que solo ofrezcas envíos a una provincia o región en tu tienda online WooCommerce, al finalizar compra el usuario verá el desplegable de provincias/regiones/estados completo.
No hay ningún ajuste para que WooCommerce no muestre completo el desplegable de regiones/provincias/estados.
Y no deja de ser curioso, y una putada, porque por otro lado, sí que funciona si indicas en los ajustes que solo enviarás a un país o varios, mostrando solo los países configurados para venta/envío.
Entonces ¿cómo hago para que WooCommerce solo muestre la lista de las regiones, provincias o estados en los que hay posibilidad de envío, y así evitar confundir a mis clientes?
Pues con un código ¿lo dudabas?
Limitar provincias, regiones o estados que se mostrarán al finalizar compra
En el código debes indicar tanto el país o países de los que se mostrarán provincias o regiones, como las regiones (provincias o estados) concretos que se deben mostrar, aquí no hay nada al azar.
Este sería un ejemplo:
/* Mostrar solo algunas provincias al finalizar compra */ add_filter( 'woocommerce_states', 'ayudawp_listado_provincias_limitado' ); function ayudawp_listado_provincias_limitado( $states ) { $states['ES'] = array( 'M' => __( 'Madrid', 'woocommerce' ), 'SG' => __( 'Segovia', 'woocommerce' ), 'AV' => __( 'Ávila', 'woocommerce' ), ); return $states; }
Como resultado tendrás un desplegable de provincias/regiones de España (ES) en el que solo se mostrarán las que hayas indicado en el código (Madrid, Segovia y Ávila).
Por supuesto, puedes poner solo una región o provincia, o muchas más, según lo que necesites, y tener un listado limitado para cada país que quieras configurar en tu código.
Una situación distinta sería cuando quieras mostrar todas las regiones o provincias menos una, en cuyo caso, en vez de hacer un listado enorme de regiones a incluir, puedes crear un código que excluya la que no quieras que se muestre, que sería como este:
/* Excluir regiones del desplegable woo */ add_filter( 'woocommerce_states', function( $states ){ unset($states['ES']['GC']); return $states; }, 999);
En este ejemplo he excluido la región GC, que es el código para Las Palmas de Gran Canaria.
¿Dónde están los códigos de países y provincias?
Para poder aplicar estos fragmentos de código vas a necesitar los códigos de países y regiones que reconoce WooCommerce, y que puedes encontrar en este enorme listado, en el que tienes todos los países y sus regiones.
¿Cómo y dónde añado esos códigos?
Como siempre, echa un vistazo a esta sencillísima guía sobre cómo y dónde copiar y pegar estos y otros códigos tan útiles para tu WordPress y WooCommerce:
Cómo y dónde pegar en WordPress códigos PHP, JS, CSS y funciones que encuentres por ahí
La entrada Cómo mostrar solo algunas provincias o regiones en WooCommerce la publicó primero Fernando Tellado en Ayuda WordPress. No copies contenido, no dice nada bueno de ti a tus lectores.
0 Commentaires