Cómo revertir un módulo PrestaShop después de una mala actualización

408 vistas

Cuando las actualizaciones de módulos salen mal

Actualizaste un módulo PrestaShop y ahora algo está roto. Quizás el checkout dejó de funcionar, la página principal muestra errores, o el panel de administración dejó de responder. Las actualizaciones de módulos pueden fallar por muchas razones - versiones PHP incompatibles, conflictos con otros módulos, errores de migración de base de datos, o simplemente bugs en la nueva versión. Cualquiera sea la causa, necesitas revertir rápidamente para restaurar la funcionalidad de tu tienda.

Desafortunadamente, PrestaShop no incluye un botón "deshacer" integrado para actualizaciones de módulos. No hay historial de versiones nativo ni mecanismo de rollback automático para módulos individuales.

Antes de comenzar - Seguridad primero

  1. Pon tu tienda en modo mantenimiento
  2. Crea un respaldo de la base de datos
  3. Documenta el error actual

Método 1 - Reinstalar la versión anterior desde el Back Office

  1. Navega a Módulos > Gestor de módulos
  2. Encuentra el módulo problemático y haz clic en Desinstalar (NO "Eliminar")
  3. Haz clic en Subir un módulo
  4. Sube el ZIP de la versión anterior funcional
  5. Instala y configura el módulo

Dónde obtener la versión anterior

  • Tu email - La mayoría de vendedores envían enlaces de descarga con cada compra
  • Cuenta del marketplace - En PrestaShop Addons y marketplaces de terceros como mypresta.rocks, puedes descargar versiones anteriores del historial de pedidos
  • Tus respaldos - Extrae la carpeta del módulo de un archivo de respaldo
  • Contacta al desarrollador - Los desarrolladores pueden proporcionar versiones anteriores

Método 2 - Reemplazo de archivos vía FTP/SFTP

  1. Conéctate al servidor vía FTP/SFTP
  2. Navega a /modules/
  3. Encuentra la carpeta del módulo
  4. Renombra la carpeta actual - ej. mymodule a mymodule_roto
  5. Sube los archivos de la versión anterior
  6. Establece permisos correctos - directorios a 755, archivos a 644
  7. Limpia la caché de PrestaShop

Método 3 - Desde la línea de comandos

# Conectar por SSH
ssh user@tuservidor.com

# Navegar a la raíz de PrestaShop
cd /var/www/html/prestashop

# Respaldar el módulo roto
mv modules/mymodule modules/mymodule_roto_$(date +%Y%m%d)

# Extraer la versión anterior
unzip /ruta/a/mymodule_v1.2.3.zip -d modules/

# Establecer permisos correctos
find modules/mymodule -type d -exec chmod 755 {} \;
find modules/mymodule -type f -exec chmod 644 {} \;
chown -R www-data:www-data modules/mymodule

# Limpiar caché
rm -rf var/cache/prod/* var/cache/dev/*

Método 4 - Rollback completo de base de datos

Si la actualización del módulo incluía migraciones de base de datos, necesitarás restaurar un respaldo anterior.

Cuándo necesitas un rollback de base de datos

  • El módulo creó nuevas tablas
  • El módulo alteró estructuras de tablas existentes
  • El módulo insertó o modificó valores de configuración

Método 5 - Limpieza manual de la base de datos

// Busca archivos como:
// modules/mymodule/upgrade/upgrade-2.0.0.php

public function upgrade($version)
{
    if (version_compare($version, '2.0.0', '<')) {
        Db::getInstance()->execute('ALTER TABLE `' . _DB_PREFIX_ . 'mymodule` 
            ADD COLUMN `new_field` VARCHAR(255)');
    }
}

Después del downgrade - Limpieza esencial

  1. Caché Smarty
  2. OPcache - Reiniciar PHP-FPM o Apache
  3. Caché CDN
  4. Caché del navegador - Probar en ventana privada

Verificar la versión del módulo

Después del downgrade, verifica que PrestaShop reconozca la versión correcta.

Probar exhaustivamente

  • La funcionalidad específica del módulo
  • El proceso de checkout de inicio a fin
  • Las páginas admin donde el módulo agrega contenido
  • Vistas móvil y escritorio
  • Rendimiento

Prevenir futuros problemas de actualización

  • Siempre respaldar antes de actualizar
  • Probar actualizaciones en un entorno de staging
  • Leer el changelog
  • Conservar versiones anteriores
  • Verificar compatibilidad

Cuándo contactar al desarrollador del módulo

Si ninguno de los métodos anteriores resuelve el problema, contacta al desarrollador con tu versión de PrestaShop, versión de PHP, versiones del módulo y mensajes de error exactos.

¿Le resultó útil esta respuesta?

¿Aún tiene preguntas?

Can't find what you're looking for? Send us your question and we'll get back to you quickly.

Cargando...
Volver arriba