Zonas de Envío España para PrestaShop 9.x

ES Shipping Zones PrestaShop 9 PrestaShop 9.x introduce mejoras importantes pero también errores críticos con transportistas. Este pack incluye el módulo completo de zonas españolas más el FIX oficial para TypeError en carriers.

Este pack gratuito para PrestaShop 9.x soluciona errores de tipado estricto en PHP 8+ y configura correctamente las 52 provincias españolas con zonas logísticas personalizadas.

Tutorial: Instalación del módulo + aplicación del FIX en PS9

¿Qué incluye este pack para PrestaShop 9?

PrestaShop 9 con PHP 8+ genera errores TypeError al gestionar transportistas. Este pack soluciona ambos problemas:

Errores típicos en PS9
❌ TypeError: Return value must be of type int
❌ TypeError: Argument must be of type int, string given
❌ Provincias españolas incompletas o incorrectas
❌ Imposible crear zonas logísticas por región
Solución completa incluida
✅ FIX para CarrierRepository.php
✅ FIX para CarrierRangeRepository.php
✅ 52 provincias españolas configuradas
✅ Sistema de zonas logísticas funcional

🔧 FIX Incluido: TypeError en Transportistas

Problema resuelto: PrestaShop 9.x genera errores al crear o editar transportistas debido al tipado estricto de PHP 8+.

Archivos corregidos:

  • /src/Adapter/Carrier/Repository/CarrierRepository.php
  • /src/Adapter/Carrier/Repository/CarrierRangeRepository.php

Solución: Casteo forzado a integer en métodos críticos (getOrdersCount(), getRangeMethodTable()).

Qué incluye el pack completo

FIX oficial para errores TypeError PS9
Módulo de 52 provincias españolas
Creación de zonas logísticas avanzadas
Selectores rápidos por geografía
Sincronización con carriers nativos
Compatible PHP 8.1, 8.2, 8.3

Detalles técnicos del FIX

El FIX modifica dos archivos críticos del core de PrestaShop 9 para resolver incompatibilidades de tipado:

CarrierRepository.php (línea 341)

Fuerza conversión a int en getOrdersCount() para evitar retornos string.

CarrierRangeRepository.php (línea 191)

Valida tipo integer en getRangeMethodTable() antes de procesamiento.

Tablas del módulo:

  • ps_es_shipping_zones → Almacena zonas personalizadas
  • ps_es_shipping_zone_province → Vincula zonas con provincias
  • Sincronización bidireccional con ps_state y ps_zone
PHP FIX aplicado en CarrierRepository
// Conversión forzada a integer
public function getOrdersCount(int $carrierId): int
{
    $result = $this->connection->fetchOne($sql);
    return (int)$result; // FIX: casteo explícito
}

Ventajas del pack PS9

Sin Errores PHP

FIX definitivo para TypeError carriers

Provincias Completas

52 provincias oficiales españolas

Zonas Custom

Crea agrupaciones logísticas personalizadas

Selectores Smart

Botones: Península, Baleares, Canarias

Carriers Ready

Integración nativa con transportistas

PHP 8+ Compatible

Funciona con tipado estricto

Instalación en PrestaShop 9.x

1
Aplica el FIX primero

Haz backup de /src/Adapter/Carrier/Repository/ y reemplaza los 2 archivos corregidos. Limpia caché: /var/cache/prod/.

2
Instala el módulo

Sube es_shipping_zones.zip desde el gestor de módulos. Al instalar sincroniza automáticamente las 52 provincias.

3
Crea zonas logísticas

Accede a configuración del módulo. Nombra tu zona, usa botones rápidos (Península, Islas) y guarda.

4
Configura transportistas

Ve a Envío → Transportistas. Las zonas creadas estarán disponibles para asignar tarifas diferenciadas.

Con el FIX aplicado y el módulo instalado, PrestaShop 9 funcionará sin errores TypeError y con zonas españolas correctas.

⚠️ Importante para PrestaShop 9

El FIX modifica archivos del core de PrestaShop:

  • Haz backup completo antes de aplicar el FIX
  • Los archivos modificados están en /src/Adapter/Carrier/Repository/
  • El módulo elimina provincias antiguas de España y las recrea
  • Opcionalmente, puedes usar overrides PSR-4 en /Override/PrestaShop/Adapter/
  • Limpia siempre /var/cache/ después de aplicar cambios

Si PrestaShop lanza actualizaciones, verifica que los archivos del FIX no sean sobrescritos y vuelve a aplicarlos si es necesario.

Descargar Pack PrestaShop 9.x

Módulo + FIX TypeError para PS 9.0 - 9.2

⬇️ Descargar Pack 9.x Completo

ES Shipping Zones v1.0.1 + FIX PS9

Desarrollado por Disciplina Digital | Javier Ortiz

Compatible PrestaShop 9.0.0 - 9.2.x | PHP 8.1+ | Gratuito