Migrar un sitio de WordPress no consiste solo en copiar archivos. Cuando el proyecto crece, intervienen la base de datos, las URLs, la pila de plugins, los medios y, en muchos casos, ajustes específicos del servidor. Aquí es donde WP-CLI se convierte en una herramienta especialmente útil: permite ejecutar la migración con precisión, rapidez y menos dependencia del panel de administración.
Si ya has trabajado con tareas como exportar e importar la base de datos con WP-CLI o hacer backups con WP-CLI, este artículo irá un paso más allá: el objetivo es trasladar una instalación completa de un entorno a otro de forma ordenada y verificable.
Qué incluye una migración completa
Antes de ejecutar comandos, conviene dejar claro qué significa “migrar” un WordPress completo. En la práctica, normalmente hablamos de:
– Los archivos del núcleo, temas, plugins y subidas.
– La base de datos con contenidos, opciones y configuraciones.
– La actualización de URLs si cambia el dominio o el subdominio.
– La comprobación final de enlaces, permisos y caché.
Este enfoque es especialmente útil en despliegues entre entornos de desarrollo, staging y producción, o cuando se cambia de hosting. Si administras varias instalaciones, puede venir bien revisar también cómo gestionar múltiples instalaciones de WordPress con WP-CLI.
Preparar el entorno de origen y destino
La migración es más fiable cuando ambos entornos están bien preparados. En el servidor de origen necesitas acceso por terminal y permisos suficientes para leer la instalación. En el destino, debes disponer de WordPress instalado o, como mínimo, del directorio listo para recibir los archivos.
Antes de empezar, comprueba que WP-CLI responde correctamente en ambos servidores. Si tienes dudas, te servirá la guía sobre cómo comprobar si WP-CLI está instalado correctamente. También es recomendable evitar trabajar en horas de tráfico alto.
Haz una copia de seguridad previa
Aunque el proceso sea técnico y repetible, una migración siempre debe ir precedida de un backup. Si algo falla, podrás volver atrás sin perder contenido ni configuraciones. Puedes apoyarte en la estrategia explicada en cómo hacer un backup de WordPress con WP-CLI.
# Exporta la base de datos del sitio de origen
wp db export backup-origen.sql
# Comprime los archivos principales del proyecto
tar -czf wordpress-archivos.tar.gz .
Copiar los archivos del sitio
La parte de archivos incluye el núcleo de WordPress, temas, plugins y, sobre todo, wp-content/uploads, donde suele residir gran parte del peso del sitio. En muchos casos, el núcleo puede reinstalarse en destino para asegurar que la versión sea consistente.
Una práctica habitual es transferir solo lo necesario y regenerar lo repetible. Por ejemplo, si el destino ya cuenta con una instalación limpia, basta con copiar wp-content y luego restaurar la base de datos. Esto reduce errores por archivos obsoletos o personalizaciones accidentales.
# Copia wp-content al nuevo servidor
rsync -avz wp-content/ usuario@servidor-destino:/var/www/html/wp-content/
# O bien sube un respaldo comprimido y descomprímelo en destino
tar -xzf wordpress-archivos.tar.gz -C /var/www/html/
Si administras el servidor desde herramientas como Plesk o cPanel, conviene revisar antes WP-CLI en servidores con Plesk o cPanel, porque la ruta del sitio y los permisos pueden variar.
Exportar la base de datos desde el origen
La base de datos es el corazón de la migración. Ahí están las entradas, páginas, ajustes del tema, menús, widgets y configuraciones de plugins. WP-CLI simplifica esta tarea porque genera un volcado limpio y compatible.
# Exportación estándar de la base de datos
wp db export origen.sql
# Exportación comprimida para sitios más grandes
wp db export - | gzip > origen.sql.gz
Si surge un problema de acceso, consulta la guía sobre errores de conexión a la base de datos en WP-CLI. Es importante no seguir adelante hasta confirmar que la conexión es estable.
Importar la base de datos en el destino
Con los archivos ya transferidos, el siguiente paso es restaurar la base de datos en el nuevo entorno. Debes apuntar WordPress a la nueva base de datos y verificar que el usuario tiene privilegios adecuados.
# Importa el volcado SQL en el nuevo servidor
wp db import origen.sql
# Si el archivo está comprimido
gunzip < origen.sql.gz | wp db import -
Tras la importación, conviene limpiar cachés y asegurar que el sitio no conserve datos temporales heredados. Si tienes plugins de caché o transients activos, puede ser útil revisar cómo limpiar la caché y transients con WP-CLI.
Actualizar urls y rutas internas
Este es uno de los puntos más delicados. Cuando un WordPress cambia de dominio, de subdominio o incluso de ruta, la base de datos conserva muchas referencias antiguas. Cambiar solo la URL visible no basta: también hay que revisar enlaces internos, imágenes y metadatos serializados.
WP-CLI ofrece una ventaja clara aquí: permite hacer búsquedas y reemplazos seguros a gran escala. Si este paso te resulta familiar, ya habrás visto el enfoque en cómo cambiar la URL de WordPress con WP-CLI y buscar y reemplazar URLs con WP-CLI.
# Sustituye la URL antigua por la nueva
wp search-replace 'https://dominio-antiguo.com' 'https://dominio-nuevo.com' --all-tables
# Revisa que los cambios sean correctos sin escribir en la base de datos
wp search-replace 'https://dominio-antiguo.com' 'https://dominio-nuevo.com' --all-tables --dry-run
Siempre es recomendable empezar con –dry-run para revisar el impacto antes de aplicar cambios definitivos, especialmente en sitios con plugins que almacenan datos serializados.
Revisar wp-config.php y credenciales
Si el sitio cambia de servidor, probablemente también cambien el nombre de la base de datos, el usuario, la contraseña o el host. El archivo wp-config.php debe reflejar esos datos. No es una tarea específica de WP-CLI, pero sí forma parte de una migración completa y funcional.
Además, conviene comprobar que las rutas a archivos temporales, claves de autenticación o ajustes de entorno no se hayan quedado vinculados al servidor anterior. En despliegues automatizados, esta fase suele formar parte del script de publicación.
Verificar el sitio después de la migración
Una vez importada la base de datos y actualizadas las URLs, la revisión final es imprescindible. No des por terminada la migración hasta validar que el sitio responde, carga recursos estáticos y permite entrar al escritorio de WordPress.
# Comprueba el estado general de WordPress
wp core version
# Revisa plugins instalados y su estado
wp plugin list
# Verifica temas activos
wp theme list
# Limpia cachés residuales si procede
wp cache flush
Si durante esta fase aparecen errores, vuelve a los fundamentos de diagnóstico y revisa la guía de errores comunes al usar WP-CLI. También puede ayudarte WP-CLI no funciona: causas y soluciones si el problema está en el entorno de ejecución.
Buenas prácticas para migraciones más seguras
Una migración hecha con WP-CLI gana mucho cuando se apoya en buenas prácticas. La primera es trabajar siempre con copia previa. La segunda, validar el proceso en un entorno de pruebas antes de tocar producción. La tercera, documentar cada comando para poder repetirlo en el futuro.
En proyectos más avanzados, muchas agencias convierten este flujo en scripts bash o despliegues automáticos. Si te interesa esa línea, puedes profundizar en cómo usar WP-CLI en scripts bash y despliegues automáticos de WordPress con WP-CLI.
Otra recomendación útil es auditar el resultado final. Un sitio migrado no solo debe “funcionar”; también debe mantener permisos correctos, contenido íntegro y comportamiento estable. Para ese enfoque, resulta interesante cómo auditar una instalación de WordPress desde consola.
Conclusión
Migrar un WordPress completo con WP-CLI es una de esas tareas que, una vez dominadas, ahorran tiempo y reducen errores. La clave está en separar el proceso en fases: preparar, copiar archivos, exportar e importar la base de datos, ajustar URLs y verificar el resultado. WP-CLI no sustituye el criterio técnico, pero sí ofrece la precisión necesaria para operar con confianza.
Si ya usas la consola para actualizaciones, backups o gestión diaria, dar el salto a la migración completa es un paso natural. Y si además construyes tu flujo sobre comandos reproducibles, el proceso se vuelve mucho más predecible en cualquier servidor.
Fuentes y lecturas recomendadas
Documentación oficial de WP-CLI
Referencia de comandos de WP-CLI en WordPress Developer Resources

Deja una respuesta