Migrar un sitio WordPress de un hosting a otro sin plugins
Antes de Empezar: ¿Por Qué Migrar WordPress Manualmente?
Migrar un sitio WordPress puede parecer una tarea de expertos, pero con la guía adecuada, es un proceso que cualquier persona puede realizar con éxito. Aunque existen cientos de plugins que prometen hacer este trabajo con un clic, aprender a migrar wordpress manualmente tiene ventajas enormes: no dependes de terceros, entiendes cada parte de tu sitio y evitas los errores comunes que generan los plugins (como tiempos de espera, incompatibilidades o pérdida de datos).
Imagina que tu sitio web es una casa. Los plugins de migración son como una empresa de mudanzas que empaca todo por ti, pero a veces rompen cosas en el camino. Hacerlo manualmente es como empacar tus propias cajas: sabes exactamente qué hay en cada una y cómo colocarlas en el nuevo hogar. Además, es un conocimiento que te servirá para siempre, especialmente si planeas cambiar hosting wordpress en el futuro sin depender de herramientas externas.
En esta guía completa, te enseñaré paso a paso cómo realizar esta tarea de forma segura, sin necesidad de instalar absolutamente ningún plugin. Solo necesitarás acceso a tu panel de control actual, al nuevo y un programa FTP (te explicaré qué es esto más adelante). Vamos a desglosar todo el proceso para que sea tan sencillo como seguir una receta de cocina.
Paso 1: Preparación y Copia de Seguridad Completa
Antes de tocar cualquier archivo, debemos preparar el terreno. La regla de oro en cualquier migración es: nunca trabajes sin una copia de seguridad. Aunque vamos a mover el sitio, siempre existe la posibilidad de que algo salga mal, y tener un respaldo te dará tranquilidad total.
1.1. Accede a tu Panel de Control Actual
Primero, inicia sesión en el panel de control de tu hosting actual. Dependiendo de tu proveedor, puede ser cPanel, Plesk, DirectAdmin o un panel personalizado. Busca la sección de "Administrador de Archivos" o "File Manager". Esta herramienta te permitirá ver todos los archivos de tu sitio web.
1.2. Descarga la Carpeta Completa de WordPress
Tu sitio WordPress vive en una carpeta (normalmente llamada public_html, htdocs o www). Dentro de ella están todos los archivos: temas, plugins, imágenes y el famoso wp-config.php. Selecciona todos los archivos y carpetas dentro de esa ubicación y comprímelos en un archivo .zip o .tar.gz. Si tu panel no tiene opción de comprimir, puedes seleccionar todo y descargar por partes, pero es más eficiente comprimir.
[WARNING] Asegúrate de descargar también los archivos ocultos. En muchos paneles, los archivos que empiezan con punto (como
.htaccess) están ocultos por defecto. Activa la opción "Mostrar archivos ocultos" en la configuración del Administrador de Archivos antes de seleccionar todo.
1.3. Exporta tu Base de Datos
WordPress no solo son archivos; también tiene una base de datos donde se guardan las entradas, páginas, comentarios y configuraciones. Necesitas exportarla. Ve a la sección de "Bases de Datos MySQL" o "phpMyAdmin" en tu panel. Una vez dentro, selecciona tu base de datos (el nombre suele aparecer en wp-config.php), y busca la pestaña "Exportar". Elige el método "Rápido" y formato SQL. Descarga el archivo resultante.
[INFO] La base de datos es el "cerebro" de tu WordPress. Si la pierdes, tu sitio quedará vacío. Guárdala en un lugar seguro junto con los archivos comprimidos.
Paso 2: Prepara el Nuevo Hosting
Ahora que tienes tu "caja de mudanza" lista (archivos + base de datos), es hora de preparar el destino. Aquí es donde muchos se estresan, pero te prometo que es más fácil de lo que parece.
2.1. Crea una Base de Datos en el Nuevo Servidor
Accede al panel de control de tu nuevo hosting. Busca la sección de "Bases de Datos MySQL". Crea una nueva base de datos, un usuario y asigna todos los privilegios a ese usuario sobre esa base. Anota estos tres datos: nombre de la base, usuario y contraseña. Los necesitarás en el siguiente paso.
[TIP] Elige una contraseña fuerte pero que puedas recordar. Una combinación de letras, números y símbolos es ideal. Guárdala en un gestor de contraseñas o en un documento cifrado.
2.2. Sube los Archivos al Nuevo Servidor
Aquí es donde entra en juego el FTP (Protocolo de Transferencia de Archivos). Necesitas un cliente FTP como FileZilla (gratuito) o Cyberduck. Conéctate a tu nuevo hosting usando las credenciales FTP que te proporcionó tu proveedor (normalmente son el dominio, un usuario y una contraseña, más el puerto 21).
Una vez conectado, verás dos paneles: el izquierdo es tu computadora y el derecho es el servidor remoto. Navega en el panel derecho hasta la carpeta raíz (nuevamente, public_html o similar). Ahora, arrastra el archivo .zip que descargaste en el paso 1 y súbelo. Dependiendo del tamaño de tu sitio, puede tardar unos minutos.
2.3. Descomprime los Archivos en el Servidor
Después de subir el archivo comprimido, necesitas descomprimirlo. Algunos paneles tienen un botón "Extraer" en el Administrador de Archivos. Si no lo tienen, puedes usar el Administrador de Archivos del nuevo hosting para seleccionar el .zip y extraerlo. Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que puedes acceder a su panel desde el puerto 2106 (por ejemplo, https://tu-dominio.com:2106) y desde allí usar su Administrador de Archivos integrado, que tiene una opción de extracción muy intuitiva.
[WARNING] Si el descompresor no funciona o tu archivo es demasiado grande, una alternativa es subir los archivos ya descomprimidos desde tu computadora. Esto es más lento, pero infalible. Simplemente arrastra y suelta todas las carpetas y archivos desde FileZilla al servidor.
Paso 3: Importa la Base de Datos al Nuevo Servidor
Con los archivos en su lugar, es momento de darle vida al "cerebro". Vamos a importar la base de datos que exportaste anteriormente.
3.1. Accede a phpMyAdmin del Nuevo Hosting
En el panel de control de tu nuevo hosting, busca el icono de phpMyAdmin. Si usas Syspanel, lo encontrarás dentro de la sección de bases de datos. Ábrelo y selecciona la base de datos que creaste en el paso 2.1.
3.2. Importa el Archivo SQL
En la parte superior de phpMyAdmin, haz clic en la pestaña "Importar". Selecciona el archivo .sql que descargaste en el paso 1.3 y haz clic en "Continuar". El sistema subirá el archivo y restaurará todas tus tablas. Si el archivo es muy grande, puede que necesites aumentar el límite de subida en la configuración de PHP, pero la mayoría de los hostings modernos ya permiten archivos de hasta 50 MB o más.
[INFO] Si durante la importación ves errores, no entres en pánico. Anota el mensaje, ya que suele ser un problema de permisos de usuario o de tamaño de archivo. La mayoría de las veces, la solución es subir el archivo dividido en partes más pequeñas usando herramientas como BigDump (aunque eso ya sería más avanzado).
Paso 4: Conecta WordPress con la Nueva Base de Datos
Ahora viene el paso más técnico, pero también el más corto. Necesitas decirle a WordPress que use la nueva base de datos que acabas de importar. Esto se hace editando un archivo llamado wp-config.php.
4.1. Encuentra y Edita wp-config.php
Usando el Administrador de Archivos de tu nuevo hosting o FTP, navega hasta la carpeta donde descomprimiste WordPress. Busca el archivo wp-config.php y ábrelo con un editor de texto (el Administrador de Archivos suele tener uno integrado).
4.2. Modifica los Datos de Conexión
Dentro del archivo, verás líneas como estas:
define('DB_NAME', 'nombre_base_antigua');
define('DB_USER', 'usuario_antiguo');
define('DB_PASSWORD', 'contraseña_antigua');
define('DB_HOST', 'localhost');
Cambia los valores por los de tu nueva base de datos: el nombre, el usuario y la contraseña que creaste en el paso 2.1. El valor de DB_HOST normalmente se queda como localhost, pero si tu nuevo hosting usa un host remoto para bases de datos, te lo habrán indicado en el panel (suele ser algo como mysql.tu-dominio.com).
[WARNING] Guarda el archivo antes de salir del editor. Un error de tipeo aquí hará que tu sitio muestre un error de conexión a la base de datos. Revisa dos veces los nombres y las contraseñas.
Paso 5: Ajusta las URLs y Enlaces Internos
Este es el paso que la mayoría olvida y que causa los famosos problemas de "página en blanco" o "demasiadas redirecciones". Tu sitio tiene guardadas las URLs antiguas en la base de datos. Si cambiaste de dominio o de subdominio, necesitas actualizarlas.
5.1. Accede al Sitio (si puedes)
Intenta visitar tu dominio en el nuevo hosting. Si todo salió bien, verás tu sitio. Si ves un error, no te preocupes, es normal. Vamos a solucionarlo.
5.2. Usa el archivo wp-config.php para forzar URLs (Método rápido)
Una solución rápida para evitar el bloqueo es añadir estas líneas al final de tu wp-config.php (justo antes de la línea que dice /* That's all, stop editing! */):
define('WP_HOME', 'http://tu-nuevo-dominio.com');
define('WP_SITEURL', 'http://tu-nuevo-dominio.com');
Reemplaza http://tu-nuevo-dominio.com con tu URL real (incluye https:// si tienes SSL). Esto le dice a WordPress que use estas URLs para el panel de administración y el sitio público.
5.3. Actualiza las URLs en la Base de Datos (Método definitivo)
Una vez que puedas acceder al panel de administración (/wp-admin), ve a Ajustes > Enlaces permanentes y haz clic en "Guardar cambios" sin modificar nada. Esto refresca las reglas de reescritura. Luego, para actualizar todas las URLs antiguas en la base de datos, puedes usar un plugin temporal (sí, aquí sí te recomiendo uno, pero solo para esto) como "Better Search Replace". Sin embargo, si prefieres no instalar nada, puedes hacerlo manualmente con una consulta SQL en phpMyAdmin. Eso ya es más avanzado, así que te recomiendo el método del plugin temporal y luego eliminarlo.
[TIP] Si tu sitio usa SSL (https), asegúrate de que todas las URLs en la base de datos también usen
https://. De lo contrario, tu sitio se verá "inseguro" y el candado aparecerá roto.
Paso 6: Configura el FTP y los Permisos de Archivos
Este paso es de mantenimiento preventivo. A veces, al descomprimir archivos en un nuevo servidor, los permisos no son los correctos, lo que puede impedir que WordPress suba imágenes o modifique archivos.
6.1. Verifica los Permisos
Conecta por FTP a tu nuevo hosting. Selecciona la carpeta raíz de tu WordPress y haz clic derecho > "Permisos de archivos" (o "File permissions"). Asegúrate de que las carpetas tengan permisos 755 y los archivos 644. No cambies los permisos de wp-config.php (debe ser 600 o 640 para mayor seguridad, pero no es obligatorio para la migración).
[WARNING] No pongas permisos
777en todo. Es un riesgo de seguridad grave. Si tienes problemas con la subida de archivos, cámbialo solo a las carpetas específicas comowp-content/uploadsy luego revierte el cambio.
6.2. Revisa el archivo .htaccess
Si usas enlaces permanentes personalizados, es posible que necesites regenerar el archivo .htaccess. Ve a Ajustes > Enlaces permanentes en tu panel de administración y haz clic en "Guardar cambios" nuevamente. Esto forzará a WordPress a crear un nuevo .htaccess si es necesario.
Paso 7: Pruebas Finales y Cambio de DNS
¡Casi lo tienes! Ahora viene la parte emocionante: verificar que todo funciona y apuntar tu dominio al nuevo servidor.
7.1. Prueba Completa del Sitio
Revisa tu sitio en el nuevo hosting. Navega por algunas páginas, entra al panel de administración, sube una imagen de prueba, crea una entrada nueva. Verifica que los formularios funcionen y que no haya errores. Revisa también la consola del navegador (F12 > pestaña "Consola") para ver si hay errores de JavaScript o de recursos no encontrados.
7.2. Cambia los Servidores DNS
Este es el paso final y el más crítico. Ve a tu registrador de dominios (donde compraste tu dominio, como GoDaddy, Namecheap, etc.) y busca la sección de "Administración DNS" o "Name Servers". Reemplaza los servidores DNS antiguos por los que te proporcionó tu nuevo hosting (suelen ser algo como ns1.tu-nuevo-hosting.com y ns2.tu-nuevo-hosting.com).
[INFO] La propagación de DNS puede tardar de 24 a 72 horas en completarse a nivel mundial. Durante este tiempo, algunos usuarios verán tu sitio en el hosting antiguo y otros en el nuevo. No te preocupes, es normal. Puedes editar el archivo
hostsde tu computadora para forzar la vista del nuevo hosting y verificar que todo esté bien antes de que la propagación termine.
Preguntas Frecuentes (FAQ) sobre Migración Manual
¿Qué hago si mi sitio queda en blanco después de la migración?
Esto suele deberse a un error en wp-config.php o a URLs incorrectas. Revisa los datos de conexión a la base de datos y añade las líneas WP_HOME y WP_SITEURL como te mostré en el paso 5.2. También verifica que los archivos estén en la carpeta correcta del servidor.
¿Es necesario cambiar los permisos de archivos?
Sí, es una buena práctica. Los permisos incorrectos pueden causar errores al subir medios o al actualizar plugins. Los valores estándar 755 para carpetas y 644 para archivos son los más seguros y compatibles.
¿Puedo hacer este proceso sin FTP, solo con el Administrador de Archivos?
Sí, es posible. Muchos paneles de control modernos incluyen un Administrador de Archivos con opción de subir y descomprimir archivos. Sin embargo, para sitios muy grandes o con muchos archivos, FTP es más rápido y confiable.
¿Qué pasa si mi nuevo hosting usa Syspanel (puerto 2106)?
Si tu proveedor usa Syspanel, el proceso es exactamente el mismo. Solo cambia la interfaz. Recuerda que para acceder al panel de administración de tu hosting, debes ir a https://tu-dominio.com:2106. Desde allí, tendrás acceso al Administrador de Archivos y a phpMyAdmin de la misma manera que en cPanel.
¿Pierdo mis posiciones en Google al migrar manualmente?
No deberías, siempre y cuando mantengas la misma estructura de URLs y configures correctamente las redirecciones. Asegúrate de que las URLs sean idénticas (con o sin www, con http o https). Si cambias de dominio, necesitarás configurar redirecciones 301, lo cual es un tema aparte pero crucial para el SEO.
Conclusión: La Migración Manual es una Habilidad Poderosa
Aprender a migrar wp sin plugins te da un control absoluto sobre tu sitio. Ya no depender
