En este tutorial vemos cómo migrar paso a paso de WordPress.com a WordPress.org, la versión hospedada en un hosting y dominio propios.
Diferencias entre WordPress.com y WordPress.org
Ya tengo un tutorial entero dedicado enumerar las Diferencias entre WordPress.org y WordPress.com, o sea que no me voy a entretener mucho en este punto, podéis verlo ahí.
Pero una de las cosas que más interesa a todo el mundo, y de las que causan que mucha gente se pase a la versión .org, es que en tu versión hospedada, puedes instalar plugins, cosa que en .com no se puede.
Eso hace que el nivel de personalización sea mucho más elevado, pues incluso podemos instalar nuestros propios eCommerces, membership sites, foros, redes sociales, etc.
Así pues, es muy frecuente el caso de alguien que empieza en WordPress.com para tener una web gratuita de forma rápida y fácil, sin hosting ni dominio, pero al cabo de un tiempo las limitaciones que este tiene, le hacen plantear migrar a WordPress.org.
Vamos pues a ver qué hacemos para migrar todo el contenido, así como el SEO y posicionamiento que tenía acumulado.
Exportar todo el contenido de WordPress.com
Lo primero que tenemos que hacer para proceder a la migración, es exportar todo nuestro contenido. Para eso nos vamos a la pestaña de "Ajustes" del menú lateral:

Seleccionamos "Ajustes"
Una vez nos encontramos en la página de ajustes, vamos a la última opción, "Exportar". Ahí veremos una interfaz muy simple, con un botón de "Exportar todo" que habla por si solo.

Podemos exportar todo nuestro contenido
Esto exporta tanto entradas como páginas, y de todos nuestros autores y fechas. Si queremos un control más granular, simplemente hacemos clic en la flechita que hay al lado del botón, y podremos elegir:

Podemos elegir que contenido queremos exportar
Como veis, podemos elegir por contenido, autores, estados, fechas, categorías, etc. Eso puede ser muy útil si un autor quiere independizarse, o decidimos hacer una web sólo de una categoría de los temas de los que hablamos en la nuestra.
En todo caso, elijamos lo que elijamos, una vez le damos al botón azul empieza el proceso de exportación. Durará unos segundos o minutos, en función de la cantidad de contenido que tengamos, y a continuación nos indicarán que ya ha finalizado:

Aviso conforme ya podemos descargar nuestro contenido
Como veis, no nos hemos descargado ningún archivo, sino que nos han mandado un enlace a nuestro correo, parecido a este que vemos a continuación:

Correo que nos llega con una URL de descarga
Como podéis ver, en este proceso aún quedan algunas cosas por traducir, pero se entiende bastante bien. La idea es que si le damos al enlace, nos descargaremos un archivo .zip con toda la información que hemos exportado.
¡Ojo con este archivo, porque contiene todo nuestro contenido! No lo vayamos compartiendo alegremente. El enlace debe usarse en los próximos siete días, luego expira.
Bien, pues con esto ya hemos hecho la primera parte. Hemos "sacado" todo nuestro contenido. Ahora nos toca ver como lo "metemos" en WordPress.
Importar todo el contenido a WordPress.org
Bien, en estos momentos ya deberíais tener en vuestro disco duro un archivo .zip con todo nuestro contenido parecido a éste:

Ya tenemos un archivo con todo nuestro contenido
Ahora deberemos ir a nuestro WordPress. Se supone que ya hemos comprado un dominio, hemos contratado un hosting, y hemos instalado WordPress. Si no es así, os recomiendo echar un vistazo al curso de WordPress, pues ahí lo podéis ver todo. En las clases #1. Comprar un dominio y contratar un hosting y #2. Instalar WordPress.
Una vez tenemos esto hecho, nos dirigiremos al menú "Herramientas" de nuestro WordPress, y haremos clic en el submenú "Importar".

Seleccionamos "Importar" en el menú "Herramientas"
Eso nos llevará a una pantalla en la que podremos ver qué tipo de importación queremos. Allí deberemos seleccionar la última, es de decir "Importar entradas, páginas, comentarios, campos personalizados, categorías y etiquetas de un fichero de exportación de WordPress."

Importar contenido a WordPress
Como veréis, debajo tenemos la opción de "Instalar ahora". Eso es porque esta funcionalidad no está incorporada por defecto, sino que viene en un plugin. Le dais al enlace, y automáticamente lo instalará y el texto cambiará a "Ejecutar importador".
El importador nos pedirá el archivo de importación. Importante: No debemos subir el archivo .zip que nos hemos descargado directamente, no nos dará el error "Esto no parece ser un archivo WXR, falta o no es válido el número de versión WXR". Primero deberemos descomprimirlo. Dentro veremos que hay un archivo XML. Y ese sí, lo subiremos:

Descomprimiremos el .zip y subiremos el .xml
A continuación le daremos a "Subir archivo e importar", y veremos la siguiente pantalla en la que deberemos configurar un par de ajustes:

Deberemos elegir qué hacer con los autores y los archivos adjuntos
La primera opción nos pregunta que hacemos con los autores del contenido que vamos a importar, y nos da 3 opciones:
- Importar autor: Esto creará un nuevo autor y le asignará la propiedad del contenido importado.
- Crear un nuevo usuario: Esto creará un usuario con el nombre que le digamos y le asignará el contenido.
- Asignar a un usuario existente: Esto asignará el contenido a un usuario que ya tengamos en nuestra web.
Si se trata de un blog personal, lo más normal es la última opción, pues ya tendremos nuestro usuario creado. Pero para blogs de muchos autores, la opción de importar usuarios nos ahorrará tiempo.
En cuanto a la segunda opción, es la de "Importar adjuntos", y vemos una casilla con la opción "Descarga e importa archivos adjuntos". Esto requiere cierta explicación, para que no nos liemos.
Imágenes y archivos adjuntos
Lo que hemos exportado, y que ahora estamos a punto de importar, sólo son datos, mayoritariamente código HTML. Eso quiere decir que en ese archivo no hay imágenes.
De nuevo: Ese .zip que ahora hemos descomprimido a .xml, no contiene ninguna imagen de las que teníamos en nuestra web antigua. Sólo tiene las URLs de ellas.
Esto quiere decir que si ahora importamos sin descargar las imágenes, a pesar que se verían en nuestra web, en realidad no las estaremos hospedando nosotros, ni las tendremos en nuestra biblioteca multimedia. Esto es un peligro, ya que en el momento en el que cerremos nuestra web en WordPress.com, estas se perderán.
Así que lo que debemos hacer es seleccionar la opción de "Descarga e importa archivos adjuntos", para que se descargue una a una las imágenes de WordPress.com, las suba a nuestro hosting, y las añada a la biblioteca. Esto hará que el proceso sea más lento, pero es el más recomendado, sin duda alguna.
Una vez elegido, le daremos al botón de "Enviar", y si lo hemos hecho todo correctamente, tendremos nuestro premio en forma de este mensaje:

¡Eureka! Lo hemos hecho, felicidades.
En ciertas ocasiones puede ser que nos encontremos con problemas. Los más clásicos son de archivos que ya existían, y que por lo tanto no podemos subir de nuevo, posts duplicados, o incluso un error de superar el tiempo máximo de ejecución, o time out.
Los primeros errores son secundarios, ya que simplemente se trata de contenido que ya habíamos importado en otros casos. Pero el tiempo de ejecución puede darnos problemas, en función del hosting en el que estemos.
Si ese fuera vuestro caso, normalmente os va a indicar uno de estos dos errores:
- Fatal error: Superó tiempo de ejecución máximo de X segundos
- Timeout (error 504): El servidor está actuando de proxy o gateway y no ha recibido a tiempo una respuesta del otro servidor, por lo que no puede responder adecuadamente a la petición del navegador.
Si así fuera, deberéis contactar a vuestro proveedor de hosting y decirle que os amplíe (aunque sea temporalmente) esos valores, porque estáis haciendo una migración, que necesitáis ampliarlos, y que en cuanto esté, ya pueden volver a colocarlos. En principio, si son serios (CDmon, SiteGround, Webempresa, etc). No vais a tener problemas.
SEO y posicionamiento
Finalmente, una última consideración en cuanto al SEO, pues no queremos perder ni pizca de lo que hemos posicionado en Google, ¿verdad? Pues aún no hemos acabado
Resulta que hasta el momento teníais unas direcciones de este estilo:
- https://lo-que-sea.wordpress.com
Y ahora tenéis:
- https://lo-que-sea.com
O sea que si cerráis vuestro blog en WordPress.com, Google no lo verá, lo desindexará, y perderéis todo el trabajo. O sea que ahora debemos trabajar con las redirecciones.
Tengo un episodio del podcast en el que cuento a fondo cómo migrar un una web sin perder posicionamiento por si queréis saber más. Pero para resumirlo, en este caso deberéis dirigiros al servicio de redirecciones de WordPress. Lo tenéis en "Dominios", elegid el dominio, vais a "Mejorar" y luego a "Redireccionar".

Vamos a decirle a WordPress que nos redirija las visitas
Aquí introducimos nuestro nuevo dominio, y listos. Por $13 lo tenemos hecho durante un año entero, tiempo suficiente para que Google vea que nos hemos "mudado" de casa y cambie todos los enlaces al nuevo dominio.
Si ya teníamos contratado un dominio premium (en lugar de usar subdominios), este paso no hace falta hacerlo, pues se mantendrán todas las URLs, y no hará falta hacer redirecciones ni nada parecido.
Resumen y conclusiones
En muchas ocasiones empezamos a trabajar con WordPress.com, pero por sus limitaciones y poca flexibilidad queremos pasar a WordPress.org.
En esos casos, debemos primero exportar el contenido de WordPress.com a nuestro ordenador, y luego importarlo a nuestro WordPress.org que hemos instalado en nuestro hosting.
En este proceso es importante no olvidar migrar también las imágenes y realizar las redirecciones correspondientes, para no depender más de WordPress.com, y que no afecte a nuestro SEO.
¡Y hasta aquí el tutorial! Ya sabéis que si queréis saber, más, tenéis los cursos de WordPress básico, intermedio y avanzado. Más de 6911 vídeos a vuestra disposición, no os los perdáis :)