Plugin oficial de COPOMEX para WordPress 5.5+. Expone la API en 4 capas — clase PHP, shortcodes, REST proxy y panel de admin — sin dependencias externas.
Plugin oficial para WordPress 5.5+ / PHP 8.1+. Usa la WP HTTP API, sin dependencias externas. Expone la API en 4 capas: clase PHP, shortcodes, REST proxy y panel de admin.
.zip del pluginCopia la carpeta copomex/ a wp-content/plugins/ y actívalo desde Plugins.
Ve a Ajustes → Copomex e ingresa tu token de API.
Usa pruebas como token para desarrollo — sin costo, sin registro, devuelve datos aleatorios con estructura real.
copomex/
├── copomex.php # Header + bootstrap
├── includes/
│ ├── class-copomex-client.php # Clase principal (24 métodos)
│ ├── class-copomex-exception.php # Excepciones tipadas
│ ├── class-copomex-admin.php # Página de ajustes
│ ├── class-copomex-shortcodes.php # Shortcodes
│ └── class-copomex-rest.php # REST proxy
└── example/
└── example.php # Snippets de uso
Copomex_Client está disponible globalmente una vez activo el plugin. Toma el token de Ajustes → Copomex de forma automática.
$client = new Copomex_Client();
// Con token explícito
$client = new Copomex_Client('TU_TOKEN');try {
$result = $client->info_cp('00000');
} catch (Copomex_API_Exception $e) {
// $e->api_code, $e->api_message
} catch (Copomex_HTTP_Exception $e) {
// $e->status_code
}// Info completa (una entrada por colonia)
$client->info_cp('06600');
// Info simplificada (un objeto)
$client->info_cp('06600', simplified: true);
// Búsqueda parcial
$client->search_cp('066', limit: 10);
// Colonias de un CP
$client->get_colonia_por_cp('06600');
// CPs de un estado
$client
$client->get_estados();
$client->get_estado_clave();$client->get_municipio_por_estado('Jalisco');
$client->get_municipio_clave_por_estado('Jalisco');
$client->get_municipio_clave_por_clave_estado('14');$client->get_colonia_por_municipio('Guadalajara');
$client->get_colonia_por_estado_municipio('Jalisco', 'Guadalajara');$client->get_cities_by_state_code('14');$client->get_localidad_por_estado_municipio('Jalisco', 'Guadalajara');
$client->get_localidad_por_clave_estado_municipio('14', '039');
$client->info_localidad('14', '039', '0001');$client->get_vialidad('14', '039', 'juarez', 10);
$client->get_tipo_vialidad();$client->info_cp_geocoding('06600');
$client->info_cp_geocoding('06600', calle: 'Insurgentes', numero: '123');
$client->info_cp_geocoding_reverse(19.4326, -99.1332);$client->consultas_disponibles();
$client->ultima_actualizacion_db();No requieren PHP. Funcionan en cualquier editor de WordPress.
[copomex_info_cp cp="06600"]Muestra información del código postal en una lista de definición (<dl>).
[copomex_info_cp cp="06600"]
[copomex_colonias cp="06600"]Lista las colonias del código postal en una lista (<ul>).
[copomex_colonias cp="06600"]
Los elementos generados tienen clases CSS para estilizarlos desde tu tema:
| Clase CSS | Elemento |
|---|---|
.copomex-info-cp | Wrapper del shortcode info_cp |
.copomex-colonias | Wrapper del shortcode colonias |
.copomex-error | Mensajes de error |
El plugin registra endpoints en la WP REST API que hacen de intermediario seguro. El token nunca sale al frontend.
| Método | Endpoint | Descripción |
|---|---|---|
GET | /wp-json/copomex/v1/info-cp/{cp} | Info de un CP |
GET | /wp-json/copomex/v1/search-cp/{texto}?limit=N | Búsqueda de CPs |
GET | /wp-json/copomex/v1/colonias-cp/{cp} | Colonias de un CP |
GET | /wp-json/copomex/v1/estados | Todos los estados |
GET | /wp-json/copomex/v1/municipios/{estado} | Municipios de un estado |
GET | /wp-json/copomex/v1/colonias-municipio/{municipio} | Colonias de un municipio |
GET | /wp-json/copomex/v1/colonias-estado-municipio?estado=X&municipio=Y | Colonias por estado y municipio |
document.getElementById('cp').addEventListener('input', async (e) => {
const cp = e.target.value;
if (cp.length !== 5) return;
const res = await fetch(`/wp-json/copomex/v1/colonias-cp/${cp}`);
const data = await res.json
| Consulta | Créditos |
|---|---|
| Todos los métodos excepto geocoding | 1 |
info_cp_geocoding | 2 |
info_cp_geocoding_reverse | 2 |