Cómo planificar y ejecutar la migración de Drupal 7 a Drupal 10 sin perder contenido ni posicionamiento SEO
Drupal 7 sostuvo millones de sitios web durante más de una década. Hizo bien su trabajo. Pero su ciclo terminó: el soporte oficial de seguridad cerró en enero de 2025, y aunque existen programas de soporte extendido de terceros, mantener un sitio en Drupal 7 hoy significa acumular deuda técnica, asumir riesgos de seguridad y quedarse fuera de los estándares que tanto usuarios como buscadores ya dan por sentados.
Saltar a Drupal 10 no es una actualización menor. Es un cambio de plataforma: arquitectura sobre Symfony, theming con Twig, configuración exportable y una API de migración integrada en el core. Justamente por eso —porque hablamos de una herramienta distinta— planificar la migración con cabeza marca la diferencia entre conservar lo que más valor tiene (años de contenido y posicionamiento ganado a pulso) o despertarse con un sitio nuevo que ha tirado por la borda media década de SEO.
Esta guía recorre el proceso completo, desde la auditoría previa hasta la verificación tras el lanzamiento, con foco en las dos preocupaciones que más quitan el sueño a quien firma el proyecto: no perder ni una página y no perder ni una posición en Google.
Auditoría previa: qué tienes y qué necesitas de verdad
Antes de tocar una línea de código, haz un inventario honesto. Lo que tienes y lo que de verdad necesitas llevarte a la nueva casa rara vez coinciden.
Inventario de contenido
Documenta todos los tipos de contenido (content types), sus campos, las taxonomías asociadas y las relaciones entre entidades. No te quedes con los que creaste a propósito: casi todos los sitios Drupal 7 arrastran content types de pruebas, taxonomías que nadie revisa desde 2015 y campos que se levantaron para una campaña puntual y nunca se borraron.
Cuantifica el volumen real: cuántos nodos hay por tipo, cuántos términos de taxonomía, cuántos archivos y elementos multimedia, cuántos usuarios registrados, cuántos comentarios. Con esos números estimas plazos y, sobre todo, detectas contenido que no merece la pena migrar.
Auditoría de módulos
Lista todos los módulos contribuidos activos en tu Drupal 7 y clasifícalos en tres grupos:
- Equivalente directo en Drupal 10: Views, Pathauto, Metatag, Redirect, Webform, Token. Existen con la misma funcionalidad o muy parecida.
- Sustituto funcional: módulos no portados pero cuya función ya cubre otro módulo o el propio core de Drupal 10.
- Sin equivalente: módulos obsoletos, abandonados o tan específicos que requerirán desarrollo a medida o un cambio de enfoque.
Esta clasificación es lo que más pesa en la complejidad del proyecto. Un sitio con 20 módulos contribuidos, todos portados, se migra en semanas. Otro con 80 módulos, 15 de ellos huérfanos, te lleva meses.
Auditoría SEO
Aquí es donde muchas migraciones tropiezan y donde luego se lloran las pérdidas. Documenta tu posición actual antes de tocar nada.
Exporta el listado completo de URLs con tráfico orgánico, posiciones en las keywords principales, title tags, meta descriptions y datos de Search Console. Screaming Frog, Ahrefs o Semrush hacen el crawl y permiten volcarlo a una hoja de cálculo manejable.
Identifica tus páginas joya: las que traen más tráfico orgánico, las que rankean para keywords estratégicas y las que reciben backlinks externos valiosos. Esas URLs son intocables. Se mantienen idénticas o se redirigen con un 301 impecable. No hay tercera opción.
Documenta también la estructura actual: ¿usas Pathauto?, ¿con qué patrón?, ¿hay alias manuales?, ¿qué redirecciones 301 tienes ya en el módulo Redirect? Todas esas piezas deben reproducirse pieza a pieza en Drupal 10.
Planificación de la migración
Migrate API o importación manual
Drupal 10 trae el módulo Migrate en el core, pensado expresamente para traer contenido desde Drupal 7 (y Drupal 6). Migrate API se conecta directamente a la base de datos del origen, mapea cada tipo de contenido, campo y entidad a su destino, y ejecuta la migración de forma automatizada y, sobre todo, repetible.
Esa repetibilidad es la gran ventaja. Puedes lanzar la migración cuantas veces necesites durante el desarrollo, afinar mappings, corregir desviaciones. El día del lanzamiento ejecutas la versión definitiva contra los datos frescos y listo.
Para sitios pequeños (menos de 500 páginas) con estructuras simples, una importación manual o semi-manual puede salir más rápida. Para cualquier cosa con miles de nodos, taxonomías profundas y relaciones cruzadas entre entidades, Migrate API es la única opción razonable.
Diseño de la arquitectura en Drupal 10
No replicar a ciegas. Repito: no replicar a ciegas la arquitectura de tu Drupal 7. La migración es la oportunidad perfecta para limpiar.
Revisa los tipos de contenido: ¿hacen falta todos?, ¿hay dos que en realidad podrían fusionarse?, ¿hay campos que ya nadie rellena? Una arquitectura más simple se mantiene mejor y rinde más.
Aprovecha lo que Drupal 10 trae de serie y antes no existía: Media Library para gestionar medios, Layout Builder para diseño flexible de páginas, JSON:API para escenarios headless o decoupled, configuración exportable para workflows de despliegue serios. Muchas cosas que en Drupal 7 exigían tres módulos contribuidos encadenados están resueltas con elegancia en el core actual.
Plan de preservación SEO
Define las reglas de mapeo de URLs antes de empezar. Lo ideal: las URLs se mantienen tal cual. Si usas Pathauto con el mismo patrón en ambas versiones y migras los alias, la preservación es automática.
Si tienes que cambiar la estructura (mejorar jerarquía, ganar legibilidad, eliminar parámetros antiguos), prepara un mapa de redirecciones 301 que case cada URL antigua con su nueva versión. Implementa esas redirecciones en Drupal 10 con el módulo Redirect.
Prepara también la migración de los metadatos SEO: title tags, meta descriptions, Open Graph, canonical URLs. Si usabas Metatag en Drupal 7, Migrate API traslada esos valores a la configuración de Metatag en Drupal 10 sin demasiada gimnasia.
Ejecución
Entorno de desarrollo
Nunca migres directamente en producción. Nunca. Levanta un entorno de desarrollo donde puedas ejecutar la migración una y otra vez, verificar resultados y corregir sin que nadie de fuera se entere.
Instala un Drupal 10 limpio con los módulos necesarios, habilita Migrate y los módulos de migración desde Drupal 7 (migrate_drupal, migrate_drupal_ui para la interfaz visual o drush si prefieres línea de comandos). Configura la base de datos del Drupal 7 como segunda conexión.
Migración de contenido con Migrate API
Migrate UI ofrece un asistente visual que analiza tu Drupal 7, detecta tipos de contenido, campos, taxonomías, usuarios y archivos, y genera las migraciones. En la mayoría de proyectos, ese asistente cubre entre el 80% y el 90% del trabajo sin escribir una línea de código.
El 10-20% restante —campos con transformaciones complejas, relaciones a medida, datos enterrados en tablas de módulos contribuidos— pide plugins de migración personalizados. Migrate API es extensible: defines fuentes de datos custom, transformaciones (process plugins) y destinos específicos.
Ejecuta la migración en orden: primero archivos y medios, luego taxonomías, después usuarios y por último el contenido. Ese orden respeta las dependencias, porque los nodos referencian taxonomías y archivos que tienen que existir antes.
Migración del theme
El theming de Drupal 10 (Twig) no es compatible con el de Drupal 7 (PHPTemplate). No reutilizas templates directamente. Tienes tres caminos: recrear tu theme actual en Twig conservando la apariencia (trabajo de frontend, pero mantienes identidad), partir de un theme base moderno como Olivero (el theme por defecto de Drupal 10) y personalizarlo, o aprovechar la migración para un rediseño completo. Cada opción tiene su coste y su retorno; elige según presupuesto y madurez del diseño actual.
Verificación tras la migración
Verificación de contenido
Una vez ejecutada la migración, valida que todo ha llegado. Compara conteos: número de nodos por tipo, términos de taxonomía, usuarios, archivos. Coge una muestra representativa de cada tipo de contenido y comprueba que los campos están mapeados, las imágenes se ven, los enlaces internos no rompen y las relaciones entre entidades se mantienen.
Atención especial a los campos de texto enriquecido (body fields). Los formatos de texto de Drupal 7 a veces no tienen equivalente directo: filtros de texto, embeds multimedia y HTML personalizado pueden necesitar ajustes manuales en lotes.
Verificación SEO
Esta es la verificación que decide si el proyecto fue un éxito o un quebradero. Comprueba que todas las URLs de tu inventario SEO devuelven 200 o redirigen correctamente con 301. Pasa Screaming Frog sobre el nuevo sitio y contrasta con el crawl original.
Revisa que title tags y meta descriptions se han migrado correctamente en las páginas que más importan. Confirma que el sitemap XML se genera con todas las URLs relevantes. Asegúrate de que robots.txt no bloquea nada que debería indexarse (clásico tropiezo al copiar configuraciones de staging).
Da de alta el nuevo sitio en Google Search Console y vigila la cobertura de indexación. Las fluctuaciones de posiciones durante las primeras semanas son normales; suelen estabilizarse entre 2 y 4 semanas si las redirecciones están bien hechas.
El día del lanzamiento
Programa el lanzamiento para un día tranquilo: martes o miércoles, nunca viernes. Lanza la migración final contra los datos más recientes de producción. Cambia el DNS o la configuración del servidor para apuntar al nuevo sitio. Y antes de respirar, verifica las URLs críticas, las redirecciones y la funcionalidad sensible (formularios, login, búsqueda interna).
Mantén el Drupal 7 accesible —sin servir tráfico público— al menos dos semanas como red de seguridad. Si aparece un problema serio, puedes revertir mientras lo resuelves sin convertir el incidente en crisis.
El resultado: una migración limpia
La migración de Drupal 7 a Drupal 10 es un proyecto serio, pero ni mucho menos un salto al vacío. Drupal 10 trae herramientas específicas para que la transición sea predecible, y con auditoría previa exhaustiva, estrategia clara de preservación SEO y verificación rigurosa después del lanzamiento, llegas al otro lado con tu contenido intacto y tu posicionamiento conservado.
Si quieres migrar tu sitio a Drupal 10 con la tranquilidad de que el contenido y el SEO ganados durante años llegan enteros al otro lado, habla con nuestro equipo especializado en Drupal y planificamos contigo cada fase del proceso.