Files
feadulta/PLAN_MIGRACION.md
T
rafa 668d973889 Initial commit — migración Joomla→WordPress feadulta.org
Incluye: mu-plugins custom (fea-homepage, carta-semana), scripts de
migración/traducción/deploy, documentación de auditoría, análisis de
cartas y HTML de evangelios exportados desde Joomla.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 08:33:12 -04:00

4.4 KiB

Plan de Migración: Joomla 3.1 → WordPress

📊 Análisis del sitio actual

Sitio: Fe Adulta - Portal cristiano de renovación de la fe
Joomla: 3.1 (2012) + PHP 7.4.33 (EOL)
Base de datos: MySQL
Contenido:

  • 8,971 artículos 📝
  • 68 categorías
  • Componentes principales:
    • K2 (sistema de contenido avanzado)
    • JCE (editor)
    • Akeeba Backup
    • AdminTools
    • AIMy Sitemap

🎯 Objetivos de la migración

  1. Modernizar la plataforma: WordPress + PHP 8.x
  2. Simplificar la estructura: Cartas semanales + artículos enlazados
  3. Monetización: Google AdSense
  4. Accesibilidad: Plugin Text-to-Speech con múltiples voces

🛠️ Fases de migración

Fase 1: Preparación y backup

  • Entorno Docker levantado
  • Análisis de contenido completado
  • Backup completo con Akeeba
  • Export de base de datos

Fase 2: Configuración de WordPress

  • WordPress instalado (ya tienes el contenedor)
  • Tema seleccionado (ligero, optimizado SEO)
  • Plugins esenciales:
    • Migración: FG Joomla to WordPress o WP All Import
    • AdSense: Ad Inserter o Advanced Ads
    • Text-to-Speech: Play.ht, Amazon Polly, o similar
    • SEO: Yoast SEO o Rank Math
    • Cache: WP Rocket o W3 Total Cache
    • Seguridad: Wordfence

Fase 3: Migración de contenido

  • Exportar artículos de Joomla (K2 + content)
  • Mapear categorías Joomla → WordPress
  • Importar artículos conservando:
    • Títulos y slugs (SEO)
    • Categorías y tags
    • Imágenes y media
    • Metadatos (autor, fecha)
  • Migrar menús
  • Migrar usuarios

Fase 4: Estructura de "Cartas Semanales"

  • Crear custom post type "Cartas Semanales" (o usar posts normales con categoría)
  • Cada carta enlaza a artículos de la semana
  • Template personalizado para cartas
  • Navegación por fechas/semanas

Fase 5: AdSense + Text-to-Speech

  • Configurar cuenta Google AdSense
  • Insertar bloques de anuncios:
    • Header
    • Sidebar
    • Entre contenido
    • Footer
  • Plugin Text-to-Speech:
    • Configurar voces (masculina/femenina/neutral)
    • Botón de reproducción en artículos
    • Opciones de velocidad

Fase 6: Testing y optimización

  • Probar enlaces internos
  • Verificar imágenes rotas
  • Optimizar base de datos
  • Configurar redirects 301 (Joomla URLs → WordPress URLs)
  • Test de velocidad (PageSpeed, GTmetrix)
  • Test mobile-responsive

Fase 7: Lanzamiento

  • DNS apuntando al nuevo servidor
  • SSL/HTTPS configurado
  • Sitemap XML generado
  • Google Search Console configurado
  • Analytics migrado

⚙️ Scripts de automatización

1. Export masivo de contenido

# Exportar todos los artículos + K2
./scripts/export-joomla-content.sh

2. Conversión de formato

# Convertir HTML de Joomla a formato WordPress
./scripts/convert-content.sh

3. Import a WordPress

# Usar WP-CLI para importar en lote
./scripts/import-to-wordpress.sh

4. Migración de imágenes

# Descargar y reorganizar media
./scripts/migrate-media.sh

📋 Checklist crítico

  • Backup completo antes de cualquier cambio
  • Probar en staging antes de producción
  • Mapeo de URLs para no perder SEO
  • Conservar metadatos (fechas, autores)
  • Migrar comentarios (si aplica)
  • Verificar formularios de contacto

🚨 Riesgos y mitigaciones

Riesgo Mitigación
Pérdida de SEO Redirects 301 + conservar URLs
Imágenes rotas Script de validación post-migración
Contenido duplicado Limpiar antes de importar
Downtime largo Preparar todo en paralelo, switch rápido

⏱️ Estimación de tiempo

  • Preparación: 2-3 horas
  • Configuración WordPress: 3-4 horas
  • Migración de contenido: 6-8 horas (automatizado)
  • Testing: 4-6 horas
  • Total: ~20 horas de trabajo distribuido en 3-5 días

📝 Notas

  • K2: El componente K2 tiene estructura propia, necesita exportación especial
  • 8,971 artículos: Migración por lotes (500-1000 a la vez)
  • Cartas semanales: Posible crear taxonomía personalizada o usar categoría + custom fields
  • Text-to-Speech: Amazon Polly es robusto, Play.ht tiene mejores voces en español

Siguiente paso: ¿Empezamos por el export de contenido o prefieres configurar WordPress primero?