Deshabilitar estados, departamentos o distritos

El plugin Modal COD Form para WooCommerce permite personalizar qué estados, ciudades o distritos se muestran al cliente dentro del formulario. según el país seleccionado. Esta guía te muestra cómo hacerlo sin necesidad de modificar archivos del plugin. Con estos filtros puedes:

  • Eliminar estados, ciudades o distritos no deseados
  • Personalizar la lista de ubicaciones por país
  • Evitar modificaciones directas al core del plugin
  • Aplicar los cambios desde tu functions.php o un plugin personalizado

Cómo eliminar departamentos o estados

Filtros para Estados/Departamentos (States)

🇨🇱 Chilecod_form_chile_states
🇨🇴 Colombiacod_form_colombia_states
🇪🇨 Ecuadorcod_form_ecuador_states
🇲🇽 Méxicocod_form_mexico_states
🇵🇦 Panamácod_form_panama_states
🇵🇪 Perúcod_form_peru_states
🇩🇴 República Dominicanacod_form_rd_states

Listado de estados y departamentos en cada país

Lista de Estados/Regiones de Chile (cod_form_chile_states)

CódigoNombre del Estado/Región
APARICA Y PARINACOTA
TATARAPACÁ
ANANTOFAGASTA
ATATACAMA
COCOQUIMBO
VSVALPARAÍSO
RMMETROPOLITANA DE SANTIAGO
LILIBERTADOR GENERAL BERNARDO O’HIGGINS
MLMAULE
NBÑUBLE
BIBÍO BÍO
ARARAUCANÍA
LRLOS RÍOS
LLLOS LAGOS
AIAYSÉN
MAMAGALLANES Y LA ANTÁRTICA CHILENA

Lista de Departamentos de Colombia (cod_form_colombia_states)
CódigoNombre del Departamento
AMZAmazonas
ANTAntioquia
ARUArauca
ATLAtlántico
BOLBolívar
BOYBoyacá
CALCaldas
CAQCaquetá
CASCasanare
CAUCauca
CESCesar
CHOCChocó
CORCórdoba
CUNCundinamarca
GUAGuainía
GUVGuaviare
HUIHuila
GUJLa Guajira
MAGMagdalena
METMeta
NARNariño
NORNorte de Santander
PUTPutumayo
QUIQuindío
RISRisaralda
SAPSan Andrés y Providencia
SANSantander
SUCSucre
TOLTolima
VACValle
VAUVaupés
VICVichada

Lista de Provincias de Ecuador (cod_form_ecuador_states)

CódigoNombre de la Provincia
EC-PPICHINCHA
EC-XCOTOPAXI
EC-CCARCHI
EC-IIMBABURA
EC-BBOLÍVAR
EC-AAZUAY
EC-FCAÑAR
EC-HCHIMBORAZO
EC-OEL ORO
EC-EESMERALDAS
EC-GGUAYAS
EC-LLOJA
EC-RLOS RÍOS
EC-MMANABÍ
EC-SMORONA SANTIAGO
EC-NNAPO
EC-DORELLANA
EC-YPASTAZA
EC-SESANTA ELENA
EC-SDSANTO DOMINGO DE LOS TSÁCHILAS
EC-USUCUMBÍOS
EC-TTUNGURAHUA
EC-ZZAMORA CHINCHIPE
EC-WGALÁPAGOS

Lista de Estados de México (cod_form_mexico_states)

CódigoNombre del Estado
DFCIUDAD DE MÉXICO
AGAGUASCALIENTES
CMCAMPECHE
COCOAHUILA DE ZARAGOZA
DGDURANGO
GTGUANAJUATO
GRGUERRERO
HGHIDALGO
JAJALISCO
MXMÉXICO
MIMICHOACÁN DE OCAMPO
MOMORELOS
NANAYARIT
NLNUEVO LEÓN
OAOAXACA
PUPUEBLA
QTQUERÉTARO
SLSAN LUIS POTOSÍ
SISINALOA
TBTABASCO
TLTLAXCALA
VEVERACRUZ DE IGNACIO DE LA LLAVE
YUYUCATÁN

Lista de Provincias y Comarcas de Panamá (cod_form_panama_states)

CódigoNombre de la Provincia/Comarca
PA-1BOCAS DEL TORO
PA-4CHIRIQUÍ
PA-2COCLÉ
PA-3COLÓN
PA-EMCOMARCA EMBERÁ
PA-5DARIÉN
PA-6HERRERA
PA-7LOS SANTOS
PA-8PANAMÁ
PA-9VERAGUAS
PA-10PANAMÁ OESTE

Lista de Regiones de Perú (cod_form_peru_states)

CódigoNombre de la Región
AMAAmazonas
ANCÁncash
APUApurímac
AREArequipa
AYAAyacucho
CAJCajamarca
CALCallao
CUSCusco
HUVHuancavelica
HUCHuánuco
ICAIca
JUNJunín
LALLa Libertad
LAMLambayeque
LIMLima Metropolitana
LMALima Provincia
LORLoreto
MDDMadre de Dios
MOQMoquegua
PASPasco
PIUPiura
PUNPuno
SAMSan Martín
TACTacna
TUMTumbes
UCAUcayali

Lista de Provincias base en Perú V2 (cod_form_peru_states para PEV2)

CódigoNombre de la Provincia
AMAAmazonas
ANCÁncash
APUApurímac
AREArequipa
AYAAyacucho
CAJCajamarca
CALCallao
CUSCusco
HUVHuancavelica
HUCHuánuco
ICAIca
JUNJunín
LALLa Libertad
LAMLambayeque
LIMLima
LORLoreto
MDDMadre de Dios
MOQMoquegua
PASPasco
PIUPiura
PUNPuno
SAMSan Martín
TACTacna
TUMTumbes
UCAUcayali

Lista de Provincias de República Dominicana (cod_form_rd_states)

CódigoNombre de la Provincia
DO-01Distrito Nacional
DO-02Azua
DO-03Bahoruco
DO-04Barahona
DO-05Dajabón
DO-06Duarte
DO-07Elías Piña
DO-08El Seibo
DO-09Espaillat
DO-10Independencia
DO-11La Altagracia
DO-12La Romana
DO-13La Vega
DO-14María Trinidad Sánchez
DO-15Monte Cristi
DO-16Pedernales
DO-17Peravia
DO-18Puerto Plata
DO-19Hermanas Mirabal
DO-20Samaná
DO-21San Cristóbal
DO-22San Juan
DO-23San Pedro de Macorís
DO-24Sánchez Ramírez
DO-25Santiago
DO-26Santiago Rodríguez
DO-27Valverde
DO-28Monseñor Nouel
DO-29Monte Plata
DO-30Hato Mayor
DO-31San José de Ocoa
DO-32Santo Domingo

Ejemplo: Eliminar Antioquia y Caldas (Colombia)

add_filter('cod_form_colombia_states', 'deshabilitar_departamentos');

function deshabilitar_departamentos($states) {
    unset($states['ANT']); // Antioquia
    unset($states['CAL']); // Caldas
    return $states;
}

Cómo eliminar ciudades

Filtros para Ciudades

El plugin permite eliminar ciudades específicas o grupos completos desde el filtro correspondiente al país. Esto se hace mediante el uso del array $places, el cual contiene las ciudades organizadas por provincias/departamentos.

PaísFiltro
🇨🇱 Chilecod_form_chile_places
🇨🇴 Colombiacod_form_colombia_places
🇪🇨 Ecuadorcod_form_ecuador_places
🇲🇽 Méxicocod_form_mexico_places
🇵🇦 Panamácod_form_panama_places
🇵🇪 Perúcod_form_peru_places
🇩🇴 República Dominicanacod_form_dominican_republic_places

📌 Importante: Los nombres de ciudad deben escribirse exactamente como aparecen en el plugin, respetando tildes, mayúsculas y espacios (por ejemplo, 'Azua de Compostela', 'Medellín').

Puedes ubicarlos activando la opción de ciudades y departamentos dentro del plugin.

Método 1: Eliminar una ciudad específica de una provincia

add_filter('cod_form_dominican_republic_places', 'eliminar_ciudad_rd');

function eliminar_ciudad_rd($places) {
    // Verificamos que exista la provincia DO-01 (Distrito Nacional)
    if (isset($places['DO-01'])) {
        $places['DO-01'] = array_filter($places['DO-01'], function($ciudad) {
            return $ciudad !== 'Santo Domingo';
        });
    }
    return $places;
}

Método 2: Eliminar múltiples ciudades de una misma provincia

add_filter('cod_form_dominican_republic_places', 'eliminar_ciudades_rd');

function eliminar_ciudades_rd($places) {
    if (isset($places['DO-02'])) { // Azua
        $ciudades_a_eliminar = array('Estebanía', 'Guayabal', 'Las Charcas');
        
        $places['DO-02'] = array_filter($places['DO-02'], function($ciudad) use ($ciudades_a_eliminar) {
            return !in_array($ciudad, $ciudades_a_eliminar);
        });
    }
    return $places;
}

Método 3: Eliminar una provincia completa (y todas sus ciudades)

add_filter('cod_form_dominican_republic_places', 'eliminar_provincia_rd');

function eliminar_provincia_rd($places) {
    // Elimina completamente el Distrito Nacional
    unset($places['DO-01']);
    return $places;
}

Método 4: Eliminar ciudades específicas sin importar la provincia

add_filter('cod_form_dominican_republic_places', 'eliminar_ciudades_multiple_rd');

function eliminar_ciudades_multiple_rd($places) {
    $ciudades_a_eliminar = array(
        'Santo Domingo',
        'Santiago',
        'La Romana',
        'Puerto Plata'
    );
    
    foreach ($places as $provincia => $ciudades) {
        $places[$provincia] = array_filter($ciudades, function($ciudad) use ($ciudades_a_eliminar) {
            return !in_array($ciudad, $ciudades_a_eliminar);
        });
    }
    return $places;
}

✅ Recomendaciones

Si tienes dudas sobre el nombre exacto de una ciudad, puedes inspeccionar el array $places con error_log():

add_filter('cod_form_colombia_places', function($places) {
    error_log(print_r($places, true));
    return $places;
});

Compartir esta información