J2W — Migración Joomla a WordPress
Migración Joomla a WordPress con filtros, wrappers y estilos opcionales
★ 1stars
2release downloads
0forks
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/rubengalansanz/j2w/releases/download/v1.2.3/j2w-install.zipReadme
J2W — Migración Joomla a WordPress
Migra artículos desde Joomla (3.10 / 4.x / 5.x) a WordPress con filtrado por contenido, wrappers por contexto, pestañas y acordeones, estilos opcionales y lotes idempotentes.
Características
- Conexión por PDO MySQL (solo lectura) con credenciales cifradas, SSL opcional y test con detección de versión de Joomla. Host por defecto
127.0.0.1(TCP); si usaslocalhosty falla el socket, reintenta solo por TCP. - Filtros por texto del contenido (exacta, palabra clave, regex, sensible o no, AND/OR con grupos anidados), con previsualización y snippets resaltados.
- Wrappers por contexto (tablas, código, citas, embeds, imágenes, listas), configurables, extensibles vía
apply_filtersy personalizables desde el theme (tu-theme/j2w/wrapper-*.php). - Pestañas y acordeones Joomla (
{tab=}…{/tabs},{tabs},{slider=}…{/sliders}, con anidado): pestañas con JS accesible o acordeón vertical estilo Joomla (conmutable en Wrappers), degradado a encabezados en salida clásica. - Estilos inline/clases opcionales (preservar, sanitizar+reasignar, ignorar) con whitelist de CSS y purga de vectores JS.
- Medios: imágenes del contenido + destacada desde
imagesJSON, con dedup y reescritura de enlaces. - Lotes (Action Scheduler o WP-Cron), dry-run, idempotencia (
_j2w_joomla_id+ hash), reanudación/cancelación, log por artículo, export CSV y API RESTj2w/v1. - WP-CLI:
wp j2w run <job-id>ywp j2w statuspara cron real del sistema.
Flujo recomendado: Conexión → Probar → Filtros → Previsualizar → Wrappers → Estilos → Cola → Crear job → Simular → Migrar → Log.
Requisitos
- PHP >= 8.1 con extensiones
domypdo_mysql - WordPress >= 6.0
Instalación
- Descarga el ZIP de la página de releases o genéralo (ver Desarrollo).
- En wp-admin: Plugins → Añadir nuevo → Subir plugin → elige el ZIP → Instalar → Activar. O descomprime como
wp-content/plugins/j2w/. - Ve a J2W → Conexión y configura un acceso MySQL de solo lectura a Joomla, por ejemplo:
GRANT SELECT ON joomla.* TO 'j2w_reader'@'%' IDENTIFIED BY '...'; - Pulsa Probar conexión, construye el filtro y previsualiza antes de migrar.
Cron puntual
WP-Cron depende de visitas al sitio; en sitios sin tráfico los lotes se retrasan. Para puntualidad usa el cron del sistema:
* * * * * wp j2w run <job-id> --path=/var/www/html
La pestaña Cola muestra la zona horaria de WordPress y avisa si DISABLE_WP_CRON está activo.
Preguntas frecuentes
- ¿Qué versiones de Joomla soporta? 3.10, 4.x y 5.x (detección por manifest, tablas workflow y
#__schemas). - ¿Crea duplicados si re-ejecuto? No: cada post guarda
_j2w_joomla_id+ hash; el re-run omite iguales y (según la política del job) omite o actualiza los cambiados. - ¿Migra usuarios y contraseñas? No. El autor es quien lanza el job; el
created_byoriginal queda en_j2w_orig_author. - ¿Migra el CSS de la plantilla? No. Solo inline y clases del contenido.
- **¿Qué pasa con
{loadmodule}y los `
Read the full README on GitHub →
Releases
| Tag | Published | Asset | Downloads |
|---|---|---|---|
| v1.2.3 | Sep 5, 2026 | j2w-install.zip | 2 |