# Auditoría de Migración: Joomla → WordPress **Fecha:** 2026-03-04 **Estado general:** Migración mayoritariamente completada, con pendientes importantes --- ## 1. Resumen de contenido ### Fuente: Joomla | Origen | Total | Publicados | En papelera | |--------|-------|-----------|------------| | `jos_content` (Joomla nativo) | 102 | 55 | - | | `ew4r_k2_items` (K2) | 17.712 | 15.764 | 54 | | `jos_categories` | 33 | 33 | - | | `ew4r_k2_categories` | 7 | 7 | - | | K2 items no publicados (borrador) | 1.885 | - | - | > **Nota:** Los artículos de `jos_content` son páginas de estructura de Joomla (demo, categorías, etc.), no contenido real del sitio. Todo el contenido editorial está en K2. ### Destino: WordPress | Tipo | Total | Publicados | Borrador | |------|-------|-----------|---------| | `wp_posts` (post) | 26.554 | 24.631 | 1.922 | | `wp_posts` (attachment) | 6.195 | 6.195 | - | | `wp_posts` (page) | 1 | 1 | - | | Categorías | 1.351 | - | - | | Tags | 12 | - | - | | Usuarios | 1.182 | - | - | | Menús importados | 19 | - | - | --- ## 2. Cobertura de migración K2 → WordPress | Métrica | Valor | |---------|-------| | K2 items publicados (no papelera) en Joomla | **15.764** | | WP posts con `_fgj2wp_old_k2_id` (migrados de K2) | **17.649** | | WP posts con `_fgj2wp_old_id` (migrados de jos_content) | **8.904** | **Conclusión:** Se migraron más K2 items (17.649) que los actualmente publicados en Joomla (15.764). La diferencia de ~1.885 corresponde a artículos que en Joomla estaban en borrador/no publicados y también se importaron (como borradores en WP). ✅ **No hay artículos K2 publicados sin migrar.** --- ## 3. Distribución por año Comparativa publicados Joomla K2 vs WordPress: | Año | Joomla K2 | WordPress | |-----|-----------|-----------| | 2008 | 217 | 217 | | 2009 | 254 | 254 | | 2010 | 452 | 451 | | 2011 | 630 | 613 | | 2012 | 923 | 1.730 | | 2013 | 986 | 1.645 | | 2014 | 931 | 1.696 | | 2015 | 920 | 1.641 | | 2016 | 830 | 1.442 | | 2017 | 739 | 1.288 | | 2018 | 729 | 1.284 | | 2019 | 1.002 | 1.495 | | 2020 | 1.053 | 1.584 | | 2021 | 1.065 | 1.594 | | 2022 | 1.032 | 1.615 | | 2023 | 1.276 | 1.797 | | 2024 | 1.348 | 2.410 | | 2025 | 1.380 | 1.814 | | 2026 | 51 | 61 | > Los años 2012–2018 muestran más posts en WP que en Joomla K2. Esto es probablemente por la importación de contenido de `jos_content` (páginas de estructura) que comparte rango de fechas. Revisar si hay duplicados en esos rangos. --- ## 4. Problemas detectados ### 🔴 CRÍTICO #### ~~4.1 — 1.922 posts en borrador~~ ✅ DECISIÓN TOMADA (2026-03-04) - Se mantienen como borradores. Son artículos K2 que estaban sin publicar en Joomla. No se tocarán. #### ~~4.2 — 508 posts con enlaces internos rotos de Joomla~~ ✅ RESUELTO (2026-03-04) - **Script:** `scripts/fix_joomla_links.php` - **Resultado:** 3.400 posts procesados, **93.030 links reemplazados**, 42 sin resolver - **Sin resolver:** K2 items que no se importaron (papelera/no publicados). Ver `links_no_resueltos.txt` - **Restantes:** 3 posts con `index.php?option=` de jos_content IDs inexistentes (IDs 52, 54, 58, 60) #### ~~4.3 — 429 posts con URLs `/es/ayuda/` de Joomla en el contenido~~ ✅ RESUELTO (2026-03-04) - Corregido por el mismo script `scripts/fix_joomla_links.php` junto con el punto 4.2 ### 🟡 IMPORTANTE #### ~~4.4 — 100 categorías con nombres numéricos~~ ✅ RESUELTO (2026-03-04) - **Causa real:** El plugin FG importó el campo K2 "Autor" (extra field id=12) usando el valor numérico como nombre de categoría en lugar del nombre del autor - **Script:** `scripts/fix_numeric_categories.php` - **Resultado:** 5 renombradas, 95 fusionadas con categorías de autor ya existentes, 0 sin resolver #### 4.5 — 333 posts con referencias a `feadulta.com` en el contenido - **Cantidad:** 333 posts con URLs absolutas al dominio original - **Acción:** Revisar si son imágenes, links externos o internos. Los internos hay que reemplazarlos por URLs relativas del nuevo WordPress. #### 4.6 — 81 posts publicados con contenido muy corto (< 100 caracteres) - **Cantidad:** 81 posts - **Causa probable:** Posts de estructura/navegación de Joomla, o migración fallida de contenido - **Acción:** Revisar manualmente o crear query para identificar si son vacíos útiles o basura - **Query:** ```sql SELECT ID, post_title, CHAR_LENGTH(post_content) as len FROM wp_posts WHERE post_type='post' AND post_status='publish' AND CHAR_LENGTH(post_content) < 100 ORDER BY len ASC; ``` #### 4.7 — 1 post publicado con contenido vacío - **ID a verificar:** ```sql SELECT ID, post_title FROM wp_posts WHERE post_type='post' AND post_status='publish' AND (post_content='' OR post_content IS NULL); ``` ### 🟢 MENOR #### ~~4.8 — Redirects 301~~ ✅ RESUELTO (2026-03-04) - **Script:** `scripts/generate_k2_redirects.php` - **Resultado:** 17.649 redirects K2 añadidos a `wp_fg_redirect` (total: 17.853) - El plugin FG K2 ya tenía activos `redirect_k2_url` y `redirect_k2_sef_url` → regex automática - Redirect verificado: `301` funcional para URLs `/es/.../item/NNN-alias.html` #### 4.9 — Solo 1 página de WordPress - El sitio tiene 1 única página publicada; todo el contenido son posts - Revisar si se necesitan páginas estáticas (Inicio, Acerca de, Contacto) #### ~~4.10 — Menus importados con nombres de sistema~~ ✅ RESUELTO (2026-03-04) - Eliminados 13 menús técnicos de Joomla: `art1menu`, `art2menu`, `art3menu`, `comentmenu`, `eucamenu`, `multimenu`, `multi2menu`, `proyemenu`, `secc1menu`, `menuuser6`, `encuesta`, `el-ano-de-la-biblia`, `buscadores` - Quedan 6 menús útiles: `mainmenu`, `secciones`, `colaboradores`, `resumeneslibros`, `idioma`, `libros` --- ## 5. Estado de medios (attachments) | Métrica | Valor | |---------|-------| | Attachments en WordPress | 6.195 | | Attachments con archivo asociado | 6.195 | | Posts con imágenes de feadulta.com | 333 | | Imágenes `/images/stories/` en contenido | 0 | | Imágenes `/media/k2/` en contenido | 0 | ✅ Los archivos de medios parecen estar correctamente importados (0 referencias a rutas antiguas de K2/stories). --- ## 6. Usuarios - **1.182 usuarios** migrados - Roles verificados (2026-03-04): 1.162 subscribers, 14 authors, 6 administrators — ✅ correcto --- ## 7. Pendientes de migración por tipo de contenido Basado en los scripts de importación presentes (`/home/rafa/*.php`): | Script | Estado | Notas | |--------|--------|-------| | `import_stories.php` | ✅ Ejecutado | 13 importados (pocos) | | `import_portadas.php` | ✅ Ejecutado | 2.385 de 2.388 OK | | `import_homilias.php` | ⚠️ Revisar | Ver `import_homilias.log` | | `import_jornada.php` | ⚠️ Revisar | Ver `import_jornada.log` | | `import_pensamientos.php` | ❓ Sin log | Verificar si se ejecutó | | `import_libros_sub.php` | ❓ Sin log | Verificar si se ejecutó | | `import_remaining.php` | ❓ Sin log | Verificar si se ejecutó | | `bulk_import.php` | ❓ Sin log | Verificar si se ejecutó | | `fix_attachments.php` | ❓ Sin log | Verificar si se ejecutó | --- ## 8. Cartas Semanales - Análisis completo disponible en `analisis-cartas/` - 4 cartas de prueba identificadas con 104 artículos vinculados (ver `CARTAS_PARA_MIGRAR.md`) - **Pendiente:** Crear la estructura de "Carta semanal → artículos relacionados" en WordPress - **Pendiente:** Verificar que las 717 entradas en categoría "Cartas de otras semanas" están correctas --- ## 9. Plan de acción priorizado ### Prioridad 1 — Contenido roto (bloquea el lanzamiento) - [x] **Arreglar 508 links `index.php?option=`** → ✅ 93.030 links corregidos (2026-03-04) - [x] **Arreglar 429 links `/es/ayuda/`** → ✅ incluido en el mismo script (2026-03-04) - [x] **Renombrar 100 categorías numéricas** → ✅ resuelto, eran IDs del campo K2 "Autor" (2026-03-04) ### Prioridad 2 — Calidad de contenido - [x] **1.922 borradores** → se mantienen como borradores (decisión tomada) - [x] **Revisar 81 posts con contenido < 100 chars** → ✅ 13 convertidos a borrador (2026-03-04) - [x] **Revisar 333 referencias a feadulta.com** → ✅ son archivos externos (`/anterior/`, `/ediciones/`) — se mantienen (2026-03-04) ### Prioridad 3 — SEO y estructura - [x] **Implementar redirects 301** → ✅ 17.853 entradas en wp_fg_redirect (2026-03-04) - [ ] **Verificar scripts de importación sin log** (pensamientos, libros, remaining) - [ ] **Estructura Cartas Semanales** → implementar relación carta → artículos - [x] **Revisar roles de los 1.182 usuarios** → ✅ correctos (2026-03-04) - [x] **Simplificar menús** → ✅ 13 eliminados, quedan 6 útiles (2026-03-04) ### Prioridad 4 — Finalización - [ ] **Configurar página de inicio** del sitio WordPress - [ ] **Activar plugins** pendientes (AdSense, TTS, Wordfence) - [ ] **Test completo** de enlaces, imágenes y navegación - [ ] **Configurar redirects DNS** y lanzar --- *Auditoría generada automáticamente el 2026-03-04. Ejecutar nuevamente tras aplicar correcciones.*