Arquitectura · 02.09.2026 · 9 min

Cómo portamos La Voz de Maipú a Astro

WordPress se quedó de base de datos, Astro pasó a renderizar el sitio y el cambio se hizo con una ruta de Cloudflare reversible en segundos. Los números, el método y lo que se rompió.

imagen · Cómo portamos La Voz de Maipú a Astro

WordPress se quedó de base de datos, Astro pasó a renderizar el sitio y el cambio se hizo con una ruta de Cloudflare reversible en segundos. Los números, el método y lo que se rompió.

El punto de partida

La Voz de Maipú es un medio local con más de veinte mil notas publicadas desde 2004 y una audiencia que llega mayoritariamente desde el celular. Corría sobre WordPress con el stack habitual de un medio: constructor visual, plugin de SEO, plugin de caché, publicidad de dos servidores distintos y quince años de decisiones acumuladas.

El diagnóstico no era una sensación, era una medición. Con Lighthouse en móvil, contra el sitio en vivo:

Noventa y nueve peticiones para mostrar un titular, una foto y ochocientas palabras. La mayoría no era contenido: era CSS del constructor, scripts de plugins, terceros de medición y publicidad.

La decisión: headless, sin migrar contenido

La tentación en este punto es “cambiar de CMS”. No hicimos eso. WordPress se quedó exactamente donde estaba, pero cumpliendo un solo rol: guardar el contenido y exponerlo por API. Dejó de dibujar el sitio y dejó de ser el lugar donde se trabaja — la redacción hoy publica desde una webapp propia, que es tema de otra nota. Lo que se reemplazó en este proyecto fue solamente la capa que renderiza.

Eso definió tres reglas que ordenaron todo el proyecto:

Primero el benchmark, después el sitio

Antes de comprometer un proyecto completo, reconstruimos en Astro la portada y una nota real, y las medimos contra las mismas páginas en producción. Cuatro días de trabajo para tener un argumento con números en vez de una promesa.

Resultado del ejercicio, contra el sitio en vivo:

El benchmark también dejó ver el techo. El punto débil era la portada, porque pedía las fotos destacadas a tamaño completo. Pedirle a WordPress los tamaños que ya genera y armar srcset —sin infraestructura nueva, sin CDN de imágenes— subió la portada de 83 a 96 y bajó el LCP a 2,7 s.

Una salvedad que dejamos escrita en el informe y que repetimos acá: WordPress corría en su servidor real y Astro corría local, así que parte de la ventaja de tiempos venía de no pagar la red. El peso y la cantidad de requests, en cambio, son independientes de dónde corra cada uno, y son los que sostienen el argumento de verdad.

El cambio en vivo, sin tocar el DNS

Esta es la parte que más miedo da y la que mejor resultó. No hubo cambio de DNS, ni subdominio nuevo, ni ventana de mantención con el sitio caído.

El dominio ya pasaba por Cloudflare. Activamos una Workers Route en el dominio completo, que hace que Cloudflare ejecute el sitio Astro en vez de ir al WordPress. La pieza clave son las rutas de exclusión: /wp-json, /graphql, /wp-content, /wp-admin y los sitemaps siguen yendo al WordPress directo. Así el sitio nuevo atiende a los lectores y el WordPress sigue respondiendo la API que consumen las herramientas internas, en el mismo dominio y al mismo tiempo.

Lo hicimos en dos fases: primero se crearon todas las exclusiones (inofensivas, porque esos paths ya iban al WordPress) y solo después se activó la ruta del sitio nuevo. Ese orden importa: al revés, la API se cae y con ella todo lo que publica.

Lo mejor del método es el rollback. Desactivar una sola ruta devuelve el sitio a WordPress en segundos, sin desplegar nada y sin esperar propagación. Con esa red bajo el pie, el cambio se hizo en ventana de bajo tráfico verificando en vivo, con la portada y una nota respondiendo desde Astro y el panel, la API y las imágenes respondiendo desde WordPress. Cinco días después del primer commit del repositorio, el dominio ya se servía con la arquitectura nueva.

Lo que se rompió

Ningún cutover sale limpio, y contarlo es más útil que el diagrama.

Lo que ganamos

Con datos de producción, no de laboratorio ideal:

Lo que no ganamos

Esta parte suele faltar en los casos de éxito, así que va explícita.

El método que nos llevamos

Cuatro cosas de este proyecto se volvieron la forma en que trabajamos:

Si estás mirando esta misma decisión para tu medio, el resumen es corto: no tienes que migrar el contenido ni cambiar de CMS para dejar de arrastrar cuatro megabytes por portada. Tienes que separar quién guarda el contenido de quién lo dibuja.

Arquitectura