Cómo migrar WordPress de dominio o a otro servidor

Una de las cosas en las que uno menos piensa cuando diseña la web de su negocio es en tener que moverla de sitio. Sin embargo, más de uno nota un escalofrío cuando toca migrar WordPress.

Si deseas migrar tu web WordPress seguramente es porque quieres:

  • Migrar WordPress de dominio: pasas de dominioA.com a dominioB.com.
  • Migrar WordPress a otro servidor: conservas dominio pero cambias de hosting.
  • Moverte de wordpress.com a wordpress.org: has empezado por lo gratuito y ahora quieres profesionalizar tu web.
  • Pasar la web de local a servidor: has desarrollado tu web en tu ordenador y ahora la quieres colgar en Internet.

Sea cual sea tu motivo, se trata de una operación delicada que debes llevar a cabo con éxito.

Lo peor que he visto cuando alguien no ha hecho bien la migración de su WordPress es perder la web.

¿Qué pasó?

Pues que eliminó la web origen antes de tener la web destino funcional. Sin tener una copia de seguridad que pudiera recuperar.

Vamos a ver, esto no es lo habitual.

Lo que más sucede cuando no migras bien WordPress es sencillamente tener que volver a empezar.

Sin embargo, piénsalo: ¿está tu web accesible públicamente en ese momento?

Quizás estás recibiendo visitas que se llevan un chasco al no poder ver la web. Puede que hasta estés perdiendo algún cliente. Quién sabe.

Pero tranquilo: esto a ti no te va a pasar.

A continuación vas a aprender todos los aspectos que conlleva migrar WordPress.

Te aseguro que no es complicado. Se trata más bien de una secuencia de pasos y buenas prácticas que debes seguir.

¡Vamos con ello!

migrar wordpress de dominio

Qué es y qué no esta guía para migrar WordPress

Existen dos formas de mover tu web WordPress de un lado para otro.

Esta guía trata sobre migrar WordPress manualmente. Es decir, sin usar ningún plugin.

Si lo que a ti te interesa realmente es migrar WordPress con un plugin, entonces te recomiendo este increíble tutorial que hice de Duplicator. Es el plugin que yo utilizo para hacer backups y para la mayor parte de las migraciones que hago.

Existen otros plugins como el de All-in-One WP Migration, también muy popular y con buenas valoraciones, pero al no haberlos usado no puedo recomendarlos.

Un segundo aspecto que quiero aclarar sobre esta guía es en relación a la motivación que puedes tener por estar aquí.

Si lo que buscas es cambiar WordPress de dominio o cambiar WordPress de servidor, estás de enhorabuena. Vas a aprender cómo hacerlo de forma segura y metódica.

Por lo contrario, si quieres migrar de WordPress.com a WordPress.org, entonces no estás en el lugar indicado. Te recomiendo buscar un tutorial específico para ello. Eso sí, cuando hayas acabado, aquí en SrMomo encontrarás un montón de contenido útil para ti. ????

Finalmente, decirte que considero que el tema del hosting lo tienes resuelto. Dicho de otra forma, que ya sabes hacia dónde quieres migrar WordPress.

¿No sabes qué alojamiento web contratar? Mi guía completa para escoger el mejor hosting WordPress para ti te ayudará.

Si quieres conocer ya mismo qué proveedor está bien, te puedo recomendar el que yo uso: SiteGround. Dentro del artículo analizo el hosting y explico porqué es mi elegido.

Por cierto, este hosting tiene su propio plugin de migración llamado SiteGround Migrator, el cual no uso y del que tampoco voy a hablar en este post.

Hechas estas aclaraciones, empecemos.

Cómo migrar WordPress manualmente en 7 pasos seguros

Una buena migración WordPress hecha de forma manual consta de los siguientes pasos, uno de los cuales es solamente necesario en caso de migrar WordPress de dominio.

Para mostrarte paso a paso el proceso, yo voy a migrar WordPress de un subdominio a otro. Es decir, de https://web1.srmomo.com a https://web2.srmomo.com.

El proceso es exactamente el mismo si cambias de dominio. Por ejemplo, si tu caso trata de pasar de https://www.midominio.es a https://www.midominio.com.

#1 Descargar los archivos de la web

Migrar WordPress no deja de ser un traslado, como si de una mudanza se tratara.

Imagina que cambias de domicilio: ¿qué tarea es la primera que te viene en mente?

Seguramente sea poner cosas en cajas y preparar muebles para su conveniente traslado. De esto trata este punto.

Tienes dos formas de descargar todos los archivos de tu WordPress.

Descargar archivos rápidamente por WebFTP

administrador de archivos en cPanel

Entra dentro del panel de control de tu hosting (en mi caso tengo un cPanel) y busca alguna opción relacionada con WebFTP o administración de archivos.

Luego selecciona el dominio o subdominio del cual te interesa migrar WordPress y dale a ‘Ir’.

En la imagen puedes ver el directorio ‘web1.srmomo.com’ pues es el subdominio de prueba que he creado para este artículo.

selección directorio webFTP

Verás que en pantalla te aparecen todos los archivos de tu web.

Bien, ahora atento porque te doy los cuatro pasos para crear un archivo comprimido de la web para descargar:

  1. Haz clic en ‘Seleccione Todo’ para seleccionar todos los archivos. Revisa el conjunto de elementos por si ves algún archivo o carpeta que quieras excluir.
  2. Dale clic al botón ‘Comprimir’. Verás que te aparece un popup en pantalla.
  3. Selecciona la opción ‘Archivo .zip’. Opcionalmente puedes cambiar el nombre por defecto del archivo comprimido: en mi caso, ‘wp-admin.zip’. Por ejemplo, podrías cambiarlo por ‘archivos.zip’.
  4. Haz clic en ‘Compress File(s)’ para que cPanel cree el archivo comprimido.
cómo comprimir los archivos de WordPress por WebFTP cPanel

Ahora solamente te falta descargar el archivo .zip.

Búscalo entre los archivos listados, haz clic derecho encima de él y dale a ‘Descargar’.

descargar archivos WordPress por WebFTP de cPanel

Descargar archivos manualmente por FTP

descargar archivos wordpress por FTP

En el siguiente enlace te explico cómo descargar los archivos de tu WordPress por FTP:

Lectura recomendada: cómo acceder a WordPress por FTP.

Así que aquí no voy a explayarme, solamente te diré resumidamente los tres pasos que debes hacer:

  1. Accede al directorio en el que tienes tu web.
  2. Selecciona todos los archivos y directorios que deseas descargar.
  3. Haz clic derecho y dale a ‘Descargar’.

Este método para descargar los archivos de tu WordPress es más fácil pero no más rápido.

En FTP los archivos se descargan de uno en uno y puede que en tu web haya miles de ellos.

#2 Exportar la base de datos

opción phpMyAdmin en cPanel

El segundo paso para exportar tu web WordPress es descargarte su base de datos.

La base de datos de tu web es donde se almacena toda la información que has generado: páginas, entradas de blog, usuarios, opciones, etc.

Para migrar correctamente WordPress debes llevarte contigo esta información.

Así que en este paso lo que vas a hacer es exportar la base de datos en un archivo descargable.

En primer lugar, busca en el panel de control de tu hosting alguna opción llamada ‘phpMyAdmin‘ o similar.

Verás que en pantalla te aparecen todas las tablas de la base de datos de tu web.

Haz clic en la opción ‘Exportar’ situada en el menú superior.

exportar base de datos

Lo que ahora debes hacer depende del tamaño de tu base de datos:

  • Si tu base de datos pesa menos de 50 Mbs, usa el método de exportación rápido que viene por defecto y dale a ‘Continuar’. De esta forma, te descargarás un archivo .SQL.
  • En cambio, si superas ese límite, entonces te recomiendo descargarte un archivo comprimido. Resulta que muchos proveedores de hosting no te permiten importar una base de datos que sea superior a 50 Mbs. Puede que ellos lo hagan por ti (por poder, pueden) pero no siempre querrán. En este caso escoge el método de exportación Personalizado [1], luego la compresión con zip [2] y finalmente dale al botón ‘Continuar’ situado abajo del todo.
exportación rápida de base de datos archivo SQL

Consejo: ¿cómo reconocer la base de datos si tienes varias creadas? Si no tienes claro qué base de datos corresponde a tu web, abre el archivo wp-config.php. Mira el paso 7 si no sabes cómo hacerlo.

#3 Subir los archivos al nuevo servidor

Se trata de hacer lo mismo que en el primer paso pero a la inversa: en vez de descargar archivos del antiguo servidor, debes subirlos al nuevo.

Puedes hacerlo por FTP o WebFTP.

Por FTP ya sabes que es de uno en uno: conéctate por FTP al nuevo alojamiento web y sube los archivos.

SI optas por el WebFTP, lo primero es:

  1. Ir a cPanel (o al panel de control que tengas).
  2. Entrar en ‘Administrador de archivos‘.
  3. Seleccionar el nuevo directorio de la web. En mi caso, he creado otro subdominio: web2.

Una vez dentro verás que el directorio está vacío. Bueno, puede que haya algún archivo o carpeta creados por el propio hosting, pero en cualquier caso no hay ningún elemento propio de WordPress.

nuevo directorio al que subir archivos WordPress para migración

Al hacer clic en ‘Cargar’, en el menú superior, fíjate cómo se te abre una nueva pestaña en el navegador.

Es tan sencillo como seleccionar el archivo comprimido .zip [1] descargado previamente. Una vez subido, dale a volver atrás [2] para cerrar la pestaña.

A continuación haz clic derecho en el archivo comprimido y dale a ‘Extract’.

Como has subido el .zip directamente al directorio en el que quieres tener tu nueva web, confirma la ruta en el popup que te aparece haciendo clic en ‘Extract File(s)’.

Fíjate como en pantalla te aparecen los mismos archivos que tenías en la antigua ubicación.

¡Ya has podido migrar la mitad de WordPress!

Consejo: elimina el archivo comprimido del servidor para ahorrar espacio y para mayor seguridad.

#4 Crear la nueva base de datos

En cPanel, la creación de una base de datos consta de cinco pasos:

  1. Acceder al menú ‘MySQL Bases de datos’.
  2. Crear una base de datos. Ponle un nombre que puedas reconocer pero que no sea obvio, por seguridad.
  3. Crear un usuario MySQL para acceder a la base de datos. Aquí vigila poner un buen nombre pero sobretodo una contraseña potente.
  4. Asociar el usuario MySQL a la base de datos.
  5. Otorgar al usuario todos los permisos o privilegios.
opción MySQL Bases de datos en cPanel
crear usuario mysql
asociar el usuario mysql a la base de datos
otorgar privilegios al usuario mysql

#5 Importar el contenido de la base de datos origen

Meter en la nueva base de datos el contenido de la anterior es lo más similar a importar WordPress. Con esta acción recuperas toda la información que habías creado en tu web.

En primer lugar, dirígete de nuevo a phpMyAdmin y selecciona la base de datos que acabas de crear.

Verás que está vacía.

¡Haz clic en la opción superior de Importar!

opción importar contenido a una database

Ahora selecciona el archivo SQL (o el comprimido) que has descargado tras exportar la anterior base de datos.

Una vez hecho, dale al botón de Continuar.

importar base de datos

Si has importado correctamente la base de datos verás un mensaje parecido al siguiente:

mensaje de éxito en la importación de la base de datos

#6 Actualizar las direcciones URL (si nuevo dominio)

Llegados a este punto, al haber movido los archivos y la base de datos, ya has podido migrar WordPress.

¿Significa esto que has acabado?

Depende.

Si conservas el dominio, entonces salta al siguiente y último paso directamente.

En cambio, si el dominio es nuevo, entonces sigue leyendo para cambiar WordPress de dominio.

Si quieres que tu web pase de dominioA.com a dominioB.com, debes trabajar un poco más. Y es importantísimo hacer bien este paso.

Has hecho la mudanza, pero es como si tienes pendiente actualizar tu dirección postal de cara al banco, el padrón, la compañía telefónica, las aseguradoras, etc. Todos ellos creen que aún vives en el anterior domicilio.

Pues lo mismo le sucede a tu web: debes hacer cambios en la base de datos para trabajar con el nuevo dominio en vez de con el anterior.

Algo así como la opción ‘Buscar y Reemplazar’ de un editor de textos.

Para actualizar las URLs de una base de datos, debes comunicarle una serie de órdenes o comandos en el lenguaje que entiende: MySQL.

El código SQL para actualizar urls

El siguiente código debes introducirlo en la nueva base de datos:

UPDATE wp_options SET option_value = REPLACE ( option_value, 'dominioA.com', 'dominioB.com' );

UPDATE wp_posts SET guid = REPLACE ( guid, 'dominioA.com', 'dominioB.com' );

UPDATE wp_posts SET post_content = REPLACE ( post_content, 'dominioA.com', 'dominioB.com' );

UPDATE wp_postmeta SET meta_value = REPLACE ( meta_value, 'dominioA.com', 'dominioB.com' );

Atención: en la imagen hay una barra deslizante. Procura seleccionar todo el texto.

Pero ojo, ¡no debes usar estas consultas SQL directamente!

Debes editarlas antes y hacer los siguientes dos ajustes:

  1. Reemplazar los dominios: dominioA.com por el dominio de origen y dominioB.com por el dominio destino al cual estás en proceso de migrar WordPress.
  2. Comprobar el prefijo de las tablas: por ejemplo, en la tabla ‘wp_posts’ el prefijo es ‘wp’. Es el que viene por defecto cuando instalas WordPress. Pero puede que lo hayas cambiado por otro: si es así, haz los cambios necesarios.

Consejo: para comprobar el prefijo de tus tablas, entra en phpMyAdmin y selecciona la base de datos. Verás un listado con todas las tablas. El prefijo está al inicio de cada una de ellas.

Cómo usar los comandos SQL

Para introducir las consultas SQL para actualizar las URLs debes ir, dentro de phpMyAdmin, a la opción superior ‘SQL’.

Pega los comandos y verifica que son los correctos.

Fíjate cómo he modificado los prefijos y los dominios para poder hacer mi particular migración:

consultas SQL para actualizar las URLs en una migración WordPress

Haz clic en el botón ‘Simular consulta’ para hacer una prueba.

Debería salirte algo similar a esto:

simular consulta SQL actualizar URL

No te fijes en el número de coincidencias. El WordPress que estoy migrando es virgen: no tiene casi contenido. Además, si te sale que alguna coincidencia es nula o cero, no te preocupes.

En cambio, si te sale un mensaje de error seguramente sea porque el prefijo no es el correcto y el sistema detecta que las tablas no existen.

Si todo ha ido bien, es el momento de cerrar la simulación y darle a la opción de ‘Continuar’ de al lado.

La página se actualizará y verás algo similar a esto:

URLs actualizadas para completar la migración WordPress

¿Has llegado hasta aquí?

¡Felicidades! ????

Has superado el paso más difícil y solo te queda uno.

#7 Conectar la instalación con la base de datos

Para migrar WordPress del todo únicamente te falta conectar la nueva base de datos con los archivos de WordPress.

Para ello edita el archivo wp-config.php situado en el directorio raíz en el que tienes la web. Puedes hacerlo tanto por FTP como por WebFTP, lo que prefieras.

editar archivo wp-config.php

Una vez dentro verás al principio los ajustes MySQL para conectar con la anterior base de datos.

Debes modificarlos con los ajustes de la nueva base de datos.

Te muestro cómo hacerlo:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'AQUI EL NOMBRE DE LA NUEVA BASE DE DATOS' );

/** MySQL database username */
define( 'DB_USER', 'AQUI EL USUARIO DE LA BASE DE DATOS' );

/** MySQL database password */
define( 'DB_PASSWORD', 'AQUI LA CONTRASEÑA DEL USUARIO MYSQL' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' ); // ESTO SUELE SER LOCALHOST, DEJAR TAL CUAL

En la siguiente imagen puedes ver cómo lo he hecho yo:

nuevos ajustes MySQL en wp-config.php

Guarda los cambios en wp-config.php y visita tu web en la nueva dirección. Por ejemplo, para mi es https://web2.srmomo.com.

Si puedes acceder correctamente a la misma, ¡felicidades!

Has podido migrar WordPress correctamente y hasta el final.

Ajustes tras la migración de WordPress

Cuando finalizo el proceso de migración de una página web, me gusta comprobar que todo está bien.

Eso supone ir más allá de la simple verificación de navegar por la web en plan «a ver si veo algo extraño».

Los ajustes que comparto contigo forman parte de mi checklist personal que siempre sigo.

Llevarlos a cabo es lo que me permite quedarme tranquilo sabiendo que he podido migrar WordPress bien y no dejarme ningún cabo suelto.

Guardar los enlaces permanentes

Esta opción se encuentra en Ajustes > Enlaces permanentes.

La idea es simplemente guardar de nuevo la configuración de los enlaces para regenerar el archivo .htaccess.

De esta forma me aseguro que al navegar por la web no voy a encontrar errores 500 o Internal Server Error.

Comprobar los formularios de contacto

Este ajuste supone navegar por tu web a la caza de cualquier formulario que haya.

El objetivo es probarlos todos. Sí, todos.

Asegúrate de testear también el formulario de alta en la newsletter, si lo tienes: ¡es el que la gente se olvida más de comprobar!

Es importante porque nunca sabes qué contacto puedes perder si el formulario no funciona.

Hacer compras de prueba

Si has llevado a cabo la migración de una tienda online en WooCommerce, lo último que puedes permitirte es el lujo de que algo falle en el proceso de compra.

Es por eso que siempre hago un test, una compra real. Pero no solamente una: hago una por cada método de pago que el cliente tiene disponible.

¿Te da cosa gastarte dinero para comprobar que tu cliente puede comprarte?

Miedo me daría a mí perder una venta por culpa de un checkout que falla. De todas formas, hazte un cupón del 90% y listos.

Asimismo, este ajuste es necesario sobretodo si has querido migrar WordPress de dominio.

En este sentido, recuerda hacer los cambios necesarios de URLs en los ajustes de las herramientas de pago: Stripe, PayPal, el TPV del banco, etc.

Cambiar las direcciones de correo (si cambio de dominio)

No queda bien que en tu web dominionuevo.com tengas una dirección pública que no corresponda con el dominio.

Por ejemplo, imagina un info@dominioantiguo.com en https://www.dominionuevo.com.

Queda poco profesional, ¿verdad?

Pues también debes procurar recibir cada notificación de tu web en tu nueva dirección de correo, sobretodo si vas a dejar de usar la antigua.

Te dejo con un listado de los lugares más habituales en los que debes cambiar la dirección de email:

  • Página de contacto: tanto a nivel de formulario como de dirección de correo electrónico escrita en la página.
  • Ajustes > Generales: la dirección de correo para las notificaciones de WordPress.
  • WooCommerce > Ajustes > Correos electrónicos para los avisos relacionados con los pedidos.
  • WooCommerce > Ajustes > Producto > Inventario para las notificaciones de stock.
  • El pié de página, donde se suele mostrar un email de contacto.

Pon al día las licencias de uso (si cambio de dominio)

Si estás aquí porque quieres migrar WordPress de un dominio a otro, este ajuste es imprescindible para poder seguir actualizando los temas y los plugins que usas en tu web.

Por ejemplo, los tres plugins que yo siempre tengo en la lista para poner al día su licencia son Elementor, GeneratePress y WPML.

La forma de hacerlo depende de cada plugin, pero habitualmente debes desconectar la web de la licencia y volver a activar esta última.

Posibles errores al intentar migrar WordPress

No toda migración sale bien.

Incluso si ya has hecho algunas, siempre hay algo que puede torcerse: es cuando aparecen errores.

No te desesperes: lo más habitual es que no hayas hecho bien alguno de los pasos para migrar WordPress correctamente. Repásalos con calma pues cualquiera de ellos puede repetirse.

A continuación te comento los errores que más he visto en aquellas migraciones que sí se habían hecho bien a priori.

El dominio apunta al antiguo hosting (DNS)

Este error tiene lugar cuando no quieres cambiar WordPress de dominio.

Dicho de otra forma, quieres que tudominio.com pase de apuntar el hosting del Proveedor A a apuntar el del Proveedor B.

Para ello tienes que cambiar algo que se llama DNS: son las direcciones que metes en la configuración de un dominio para que apunte a un servidor u a otro.

Así pues, debes hacer dos cosas:

  1. Cambiar las DNS por las del hosting nuevo. Si no las encuentras, pídeselas a tu proveedor.
  2. Esperar unas 24 horas para que los cambios se propaguen.

Seguramente, hasta que no hayas hecho esto no podrás pasar del sexto paso para migrar WordPress. Si es que consigues llegar hasta allí. ¡Paciencia y sigue!

Hay un error de acceso a la base de datos

Tiene lugar cuando tras llevar a cabo todos los pasos entras en tu web y te sale una pantalla en blanco con «Error estableciendo una conexión con la base de datos».

La causa de que aparezca es básicamente no haber hecho bien el último paso.

Verifica que hayas anotado bien los datos de la nueva base de datos y que luego los hayas puesto bien en wp-config.php.

Lectura recomendada: cómo solucionar el error estableciendo una conexión con la base de datos.

He perdido la configuración de mi plantilla

Este error no es habitual, pero es jodido.

Afecta a algunas plantillas de WordPress, sobretodo a aquellas que utilizan una interficie propia para configurarlas, tipo «Opciones del tema«.

Por ejemplo, esto le sucede a Avada, el tema más vendido de Themeforest.

¿Por qué tiene lugar este error?

Estos temas guardan las URLs de tal forma que con una migración de WordPress se pierde la información relacionada con su configuración.

Te recomiendo exportar las opciones del tema antes de migrar WordPress para luego importarlas.

Este paso sencillo soluciona el error. ¡La cosa está en que te acuerdes!

Aún quedan URLs por actualizar

Lo de migrar WordPress es algo que he hecho cientos de veces, literalmente.

Pues verás: en más de una ocasión, quedaban URLs por actualizar.

No es técnicamente un error, pero lo pongo aquí porque es algo a solucionar.

El motivo es simple: la mayoría de plugins crean sus propias tablas en la base de datos y en ellas guardan su propia información. En algunas ocasiones, parte de esta información resulta ser direcciones URL.

Los comandos SQL que te he dado antes son útiles para cualquier WordPress, sin importar los temas o plugins usados. Ejecútalos de todos modos.

La cuestión es: ¿cómo actualizar el resto de URLs?

Plugin Better Search Replace

Entra en juego el plugin gratuito Better Search Replace: https://es.wordpress.org/plugins/better-search-replace/.

plugin better search replace

Este plugin te permite modificar tu base de datos sin tener ni idea de lenguaje SQL.

¡Un pasote!

Una vez instalado lo encontrarás en Herramientas > Better Search Replace.

Usarlo es muy fácil:

  1. En ‘Buscar por’ escribe la antigua URL.
  2. En ‘Sustituir con’ pon la nueva URL.
  3. Selecciona todas las tablas de la base de datos.
  4. Haz primero un simulacro para ver si hay resultados positivos.
  5. De haberlos, desmarca la casilla ‘¿Quieres ejecutar un simulacro?’ y ejecuta la búsqueda y sustitución real.

Por ejemplo, a mi, tras realizar el simulacro de búsqueda, me sale que no hay ninguna coincidencia:

resultado tras usar Better Search Replace

El caso de Elementor

Elementor es el maquetador número uno de WordPress. Si haces clic en el enlace verás el análisis completo que hizo Carolina.

En Elementor > Herramientas > Reemplazar URL tienes también un buscador de urls.

reemplazar urls con Elementor

Si usas Elementor, te recomiendo utilizar esta herramienta incluso antes que la del plugin anterior.

Va de fábula.

Lo que necesitas hacer antes de exportar WordPress

Ciertamente, el objetivo principal de este artículo es que sepas cómo migrar WordPress de servidor.

Sin embargo, antes de ponerte a ello te recomiendo llevar a cabo las siguientes tres acciones.

De esta forma, la migración tendrá más probabilidad de éxito y la imagen será más profesional.

Comprobar que el hosting está preparado

Recuerda que WordPress es un programario que necesita de un cierto entorno para funcionar correctamente.

Asegúrate de que el hosting al que migrarás la web está preparado para cumplir con los requisitos de WordPress mínimos.

La versión de PHP es cada vez menos problemática pues la mayoría de hostings te permiten escoger la que quieras.

Busca en tu panel de control cualquier opción relacionada del tipo «Administrador de versiones PHP».

Consejo: si tienes cualquier duda, consulta con tu proveedor de alojamiento web.

Poner la web en mantenimiento

Por mucha experiencia que tengas en lo de migrar WordPress de un servidor a otro, nunca puedes estar seguro de cuánto tiempo te va a llevar.

¿Qué quieres que vean las personas que mientras tanto intentan acceder a tu web?

Te recomiendo que tras descargar los archivos y exportar la base de datos, pongas la web aún visible en modo de mantenimiento.

Con ello te aseguras de que tus posibles clientes no vean cosas raras o directamente errores que puedan afectar a tu imagen profesional.

Descargar un programa FTP

Es evidente que para conectar con tu web vía FTP necesitas un programa que te lo permita.

El que yo uso y recomiendo es FileZilla: https://filezilla-project.org/.

Descárgatelo (es gratis) e instálalo. Si no sabes cómo usarlo, en el primer paso te he recomendado una lectura que te ayudará.

Y bien, ¿has podido migrar WordPress correctamente?

Si has seguido todos los pasos que te he dado, lo más probable es que hayas podido migrar tu web con éxito.

De ser así, ¡me alegro un montón!

A priori parece una montaña pero es cuestión de escalarla poco a poco, ¿a que sí?

Pues colorín colorado, esta entrada se ha acabado.

¿Qué te ha parecido esta guía para saber cómo migrar WordPress? ¿Te ha resultado útil? ¿Tienes alguna duda?

Apúntate a nuestra news

Serás el primero en conocer cada nueva entrada de blog que escribimos para que saques más partido a tu web. En ocasiones, también te hablaremos de nuestra formación.

Información básica sobre protección de datos: Responsable: Artilet Digital, S.L. (SrMomo). Finalidad: Gestionar y enviar información de boletines y promociones a través de correo electrónico. Legitimación: Consentimiento del interesado. Destinatarios: No se cederán a terceros salvo obligación legal. Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del siguiente e-mail: infoARROBAsrmomo.com. Información adicional: Puedes consultar la información adicional y detallada sobre protección de datos en los enlaces en el pié de página.

47 comentarios en «Cómo migrar WordPress de dominio o a otro servidor»

  1. Hola, Hola, Pablo. Saludos desde Gdl en Máxico. He leido tanto tu artículo como el video y he podido realizar la migración del wordpress a mi nuevo dominio.

    Pero me he topado en que, reviso los links, pues ya es una web armada completamente con todos y los plugins y demás. Valido las url principales y todas están dentro del nuevo dominio.
    Pero el problema es que sólo el home me lo mostra, si voy a /about, o a /galeria o /contacto, me dice que no se encontró la página.
    Así mismo quiero ingresar al administrador de wordpress y no me deja, me dice que no está disponible.
    Revisé los permisos que las carpetas tengan el 755 y los archivos el 644 y todo está bien.

    Agradecería tu ayuda para resolver este problema, please.
    Mi sitio nuevo es: mariscosmilindonayarit punto com Por si pudieras validar para que comprendieras lo que te comento.

    Te agradezco el apoyo.

    Responder
    • Hola Omar! He visitado tu web y veo que la navegación interna funciona. Es decir, que puedo moverme entre las diferentes páginas o secciones de tu web, por lo que entiendo que pudiste migrar WordPress correctamente. ¿Era un tema del .htaccess? ¿Quizás de la caché?

  2. Pablo tengo este error:

    y mi php es 7.3

    Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: exif

    Responder
    • Esto tiene que ver con una funcionalidad/librería que tu PHP debe tener instalada u activada para que la migración de WordPress se complete correctamente. Consulta con tu proveedor de hosting. Cuando lo soluciones, trata de pasarte a la versión PHP 7.4.

  3. Buenas Pablo, un tutorial super completo, enhorabuena y gracias por aportaciones así.

    En mi caso he cambiado de dominio y de servidor, y a la hora de importar el proyecto y la BD, ejecutó las sentencias que comentas para cambiar la urls, conecto el proyecto con la BD y todo parece haber ido bien hasta que intento entrar en el panel de administración. El problema que me encuentro es que no puedo entrar en wp-admin. Me dice que no tengo permisos para acceder. He perdido el control de mi proyecto. Analizando la BD , veo que aún quedan muchas URL (10.000 concretamente) que hacen referencia al antiguo dominio en el antiguo servidor ¿ Sabes si eso puede provocar que no pueda entrar en wp-admin? ¿Si es así, como puedo cambiar las URLs sin usar plugins ya que no puedo entrar en wp-admin?

    Mil gracias.

    Responder
    • Hola Juan! Gracias por tu felicitación 🙂 Tu problema parece ser más bien de los permisos de los directorios y de los archivos. Asegúrate que las carpetas tienen 755 y los archivos 644. Puedes hacerlo directamente por FTP. Si te surge algunda duda, consúltalo con tu hosting, ellos deberían poder ayudarte. Y cuando tengas esto solucionado, y con ello hayas acabado bien de migrar WordPress, pudiendo acceder a wp-admin, entonces usa un plugin para actualizar el resto de URL. Pero no, el tema de las demás URL no debería causar el problema que comentas.

  4. Hola Pablo, muy didáctica tu explicación, muchas gracias.
    Tengo mi web en un hosting y quiero traerla a mi localhost que hice en mi PC con xampp para practicar algunas cosas. He bajado los ficheros y la base de datos pero en el punto final de «vinculación» me he bloqueado y no puedo seguir adelante. Podrías indicarme como hacerlo?.
    O sea, tengo los «ficheros» descomprimidos, tengo la «base de datos»…. y fin 🙁
    Gracias de antemano

    Responder
    • Hola Alex! Gracias por tus palabras 🙂 Lo siento pero me temo que no puedo ayudarte. Para serte sincero, siempre he montado mis proyectos en el entorno definitivo (en un hosting) aunque fueran simples pruebas. Como ves, en este post trato cómo migrar WordPress de un alojamiento web a otro, no a localhost. Por allí hay muchos tutoriales con los que espero que encuentres la ayuda que necesitas. Un saludo.

  5. muchas gracias amigo, me sirvio mucho, y como dices no siempre sale al 100% la migraciason , hay que hacer algunos otros ajustillos, pero si me sirvio de mucho tu post, muchas gracias, exitos bro!!!!

    Responder
    • Celebro qure te haya resultado útil Jaime, ¡gracias por tu comentario! Si quieres puedes dejar aquí lo que has tenido que hacer adicionalmente, para acabar de migrar WordPress. Un saludo.

  6. hola pablo.
    yo necesito cambiar una página de wordpress a un nuevo hosting y nuevo dominio.
    solo que el back up esta en un archivo de updraftplus en mi google drive.
    ya tengo el nuevo dominio y el nuevo hosting.
    ya el antiguo hosting y dominio están cancelados.
    esta muy explicito tu video, pero hay cosas que no cuadran con mi problema.
    como tendría que hacerle yo ?
    anteriormente baje wordpress, updraftplus y quise restaurar, pero no pude por ser diferente dominio.
    gracias por tu ayuda

    Responder
    • Hola Karla! Lo que necesitas es buscar un tutorial de Updraftplus, pues es el plugin para migrar WordPress con el que tienes que trabajar. Siento no poder ayudarte pues este post es sobre una migración manual de WordPress y, por lo demás, en cuanto a plugins, mi experiencia es con Duplicator. ¡Espero que puedas solucionar tu situación!

  7. Hola, ¿sería necesario realizar la instalación previa de WordPress en el nuevo dominio desde el cPanel? Es claro que al copiar los archivos se reescribirá la instalación pero me queda la duda de que, si no se ha instalado previamente, al subir los archivos WordPress estará perfectamente configurado y funcional.

    Saludos

    Responder
    • Hola Francisco! No, no es para nada necesario tener un WordPress instalado en el servidor destino previo a la migración. No aporta nada. Un saludo.

    • Hola Juan. Ese error significa que se te ha denegado el acceso a la URL. Suele ser porque tienes algún plugin de seguridad en WordPress, el cual recomendiendo desactivar antes de migrar WordPress, tienes algún comando raro en tu .htaccess o algo passa con las medidas de seguridad de tu proveedor de hosting (por lo que deberías contactarle).

  8. Hola
    Me pareció bueno el tutorial, pero hice experimento al respecto y por alguna razón la copia no me quedo igual , ver páginas
    1) original: url
    2) copia: url

    También internamente sale unos mensajes sobre el editor visual de mi constructor de sitio.

    A qué se deberá?

    Responder
    • Hola Edwin! Celebro que te haya gustado el artículo. En relación a lo que comentas: lo único que veo es que en la copia no se ven algunas imágenes. Viendo el código veo que las URLs de esas imágenes son del dominio original. Es decir, que el WordPress migrado llama a las imágenes del WordPress original. Esto indica que aún tienes URLs por actualizar. Para esta tarea puedes usar la herramienta de ‘Reemplazar URLs’ de Elementor o el plugin Better Search Replace para esta tarea. Lo último que comentas, con la información aportada, no te sé decir.

  9. Hola, muy bueno el tutorial. Migré un sitio y anduvo perfecto, migré otro y me dió este error que no estoy pudiendo solucionar, sabrás qué debo hacer? Gracias.

    Responder
    • Hola Daniel! Gracias por tu apreciación. Pues, si siguiendo el mismo método una migración te salió bien pero otra mal, quiere decir que o bien la web (el WordPress) o el hosting (origen y/o destino) es diferente. Por lo que veo en el enlace que me has indicado, creo que es un tema de hosting y de configuración del subdominio o directorio en el que has migrado WordPress.

  10. Hola! Este tutorial me ha servido todas las veces que he migrado de hosting y dominio, pero, en esta última vez me ha dado este error. ¿A qué crees que se deba? El error es este: «Ha habido un error crítico en tu web.»

    Responder
    • Hola Sergio! Celebro que esta guía para migrar WordPress te haya sido útil. En cuanto al error que te aparece, necesitaría más información para poder ayudarte. Solamente me dices que ha habido un error, pudiendo ser de cualquier tipo. Si me aportas más detalles, intentaré ayudarte. De todas formas, como entiendo que has hecho otras migraciones anteriormente, intenta ver qué diferencias han habido en esta ocasión: plugins, hosting origen, hosting destino, etc. Un saludo!

  11. Me encanta lo claro que eres pero en mi caso no lo consigo. Estoy pasando de local a web y me sigue dando el error al establecer conexion con la base de datos.

    He seguido los pasos con cuidado ¿podria ser que haya cometido un error en las ordenes php?
    Lo que he puesto es:

    UPDATE wp_options SET option_value = REPLACE ( option_value, ‘http://localhost/ejemplo/’, ‘https://www.ejemplo.org/’ );

    UPDATE wp_posts SET guid = REPLACE ( guid, ‘http://localhost/ejemplo/’, ‘https://www.ejemplo.org/’ );

    UPDATE wp_posts SET post_content = REPLACE ( post_content, ‘http://localhost/ejemplo/’, ‘https://www.ejemplo.org/’ );

    UPDATE wp_postmeta SET meta_value = REPLACE ( meta_value, ‘http://localhost/ejemplo/’, ‘https://www.ejemplo.org/’ );

    Si no es eso ¿cual puede ser el error?

    Gracias y sigue así

    Responder
    • Muchisimas gracias Pablo, con el blog lo he conseguido a la primera. He tenido que llamar a Ionos porque en la base de datos cambian el nombre del host.

      Ahora me pondré a migrar una segunda web.

      ¡Muchisimas gracias por tu ayuda!

    • Estupendo nano, me alegro que hayas podido solucionarlo y nuestras guías te hayan resultado útiles. ¡Gracias por comentármelo!

  12. Hola pablo, muy buen tutorial, muchas gracias por enseñarnos esto.
    Pero me ha resultado un problema y necesito de tu ayuda, realice todos los pasos y la web si se cambio de hosting y de dominio, el problema esta en que cuando voy acceder al panel de wordpress no me carga, me redirecciona al dominio nuevo que por cierto carga todo perfectamente como estaba en el hosting viejo. pero no puedo salir de ahí, no puedo entrar al panel de wordpress en el nuevo hosting =(

    Responder
    • Hola Yuleidis! Gracias por tu valoración positiva 🙂 No entiendo el problema que expones. ¿Podrías volver a explicarlo con más detalles? Así podré intentar ayudarte.

    • Era que no podía entrar al panel de wordpress, por ejemplo colocaba .com/wp-admin y se redireccionaba a .com, pero ya lo solucione lo que hice fue instalar wordpress en el nuevo hosting antes de subir el archivo zip

    • Así que el error era mio, agradezco enormemente tu totorial, había intentado otros métodos y este en definitiva es el mejor de todos y muy bien explicado =)

    • Celebro que lo hayas solucionado! Y me parece estupendo que lo hayas hecho tú misma, pues así es la mejor forma de aprender. De nuevo, ¡gracias por tus lindas palabras sobre esta guía para migrar WordPress!

  13. me va de maravilla la migración, excelente explicación, sumamente completa puntualizando esos detalles que habían sido un rompedero de cabeza estos días sin tener los resultados. gracias

    Responder
  14. Hola Pablo, de antemano una gran felicitación ya que este tutorial está muy bien explicado. En mi caso personal, y siguiendo paso a paso todos los puntos, a la hora de subir la base de datos se tarda mucho y aparece después un mensaje como el siguiente;

    Proxy Error
    The proxy server received an invalid response from an upstream server.
    The proxy server could not handle the request

    Reason: Error reading from remote server

    Mi web pesa cerca de 215mb y la base de datos es solo de 12mb por lo que desconozco el motivo que lo provoca y de como poder arreglarlo, agradezco el soporte y la ayuda!

    Responder
    • Hola Carlos!

      Gracias por tu comentario 😉
      En relación a lo que comentas, parece ser un error que tienes a nivel de Proxy Settings o Lan Settings en tu navegador. De ser así, no tendría nada que ver con el proceso de migrar WordPress. Mi consejo sería probar a llevarlo a cabo desde una ventana en incógnito, desde otro navegador e incluso desde otro ordenador.

  15. Aun no he hecho la migracion, pero la explicacion esta mas que clara, independientemente del resultado me parece muy buena. Ya le contare.

    Responder
    • Muchas gracias Alexeys por tus palabras Alexeys. ¡Celebro que te gustara! Suerte con tu migración WordPress.

  16. Pablo, un crack, excelente, fácil, explicado sin vueltas, los pasos exactos, cambie hosting y dominio al toque, me demore un poquito por errores tontos míos que los descubrí fácil, me ganaste como fan, gracias…….totalessss !!!

    Responder
    • Hola Cesar!
      Te agradezco tus palabras y celebro que este tutorial de migración de WordPress te haya resultado útil. Enhorabuena también por poder analizar qué errores propios te encontraste y solventarlos. ¡Nos vemos por aquí! ????

  17. Hola! muy interesante el contenido. Soy nuevilla en esto y estoy teniendo un problema en wordpress que muchas veces me impide loguearme.
    Rehice mi sitio web y migre la vieja web (con muchos cambios, entre ellas me pase a Elementor/Generate Press) a un nuevo dominio y servidor. Contraté a una persona para que lo haga. Sin embargo, muchas veces cuando intento acceder a la web o intento loguearme me aparece un error 403: Request forbidden for administrative rules.

    ¿Que podra ser? Muchas gracias!

    Responder
    • Hola Coty!

      Quén bien que esta guía para migrar WordPress te resulte útil.

      En relación a lo que comentas, probablemente se trate de una migración no bien completada del todo. Deberías revisar los permisos de los archivos presentes en el directorio en el que el WordPress está situado, especialmente también el archivo .htaccess. También puede que sea un tema de la configuración de la seguridad del servidor, así que te recomiendo plantearles el problema a ellos pues podrán darte una solución certera.

      ¡Un abrazo!

Deja un comentario

Información básica sobre protección de datos: REPONSABLE: Artilet Digital, S.L. (SrMomo). FINALIDAD: Gestionar la solicitud que realizas en este formulario de contacto. LEGITIMACIÓN: Consentimiento del interesado. DESTINATARIOS: No se cederán a terceros salvo obligación legal. DERECHOS: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del siguiente e-mail: infoARROBAsrmomo.com. INFORMACIÓN ADICIONAL: Puedes consultar la información adicional y detallada sobre protección de datos en los enlaces en el pié de página.

Únete a SrMomo

y mejora tu WordPress

Información básica sobre protección de datos: REPONSABLE: Artilet Digital, S.L. (SrMomo). FINALIDAD: Gestionar y enviar información de boletines y promociones a través de correo electrónico. LEGITIMACIÓN: Consentimiento del interesado. DESTINATARIOS: No se cederán a terceros salvo obligación legal. DERECHOS: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del siguiente e-mail: infoARROBAsrmomo.com. INFORMACIÓN ADICIONAL: Puedes consultar la información adicional y detallada sobre protección de datos en los enlaces en el pié de página.

Únete a SrMomo

y mejora tu WordPress

Información básica sobre protección de datos: REPONSABLE: Artilet Digital, S.L. (SrMomo). FINALIDAD: Gestionar y enviar información de boletines y promociones a través de correo electrónico. LEGITIMACIÓN: Consentimiento del interesado. DESTINATARIOS: No se cederán a terceros salvo obligación legal. DERECHOS: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del siguiente e-mail: infoARROBAsrmomo.com. INFORMACIÓN ADICIONAL: Puedes consultar la información adicional y detallada sobre protección de datos en los enlaces en el pié de página.