Enter

WordPress 101 / 7 min de lectura

¿Qué es WordPress headless y cuándo deberías usarlo?

black screenw with colorful code

WordPress ha sido el sistema de gestión de contenido preferido para sitios web en todo el mundo durante más de una década, pero al igual que evolucionó desde sus inicios solo como plataforma de blogs, ahora ha ingresado al mercado de los CMS sin cabeza, y parece que llegó para quedarse.

El CMS sin cabeza es una variación de la arquitectura tradicional de WordPress, que separa el backend del frontend, proporcionando un nuevo mundo de posibilidades para desarrolladores que quieren conectar WordPress con decenas de otras plataformas.

Este artículo explora WordPress sin cabeza, sus pros y sus contras, y los casos en los que su uso es más beneficioso que la arquitectura monolítica tradicional.

¿Qué es un CMS sin cabeza?

desarrollo y diseño web

Los CMS sin cabeza separan el frontend y el backend dentro del mismo sistema de CMS, integrándolos a través de APIs. Esto significa que gestionás el contenido desde una plataforma (backend) pero lo entregás a través de otra (el frontend o capa de presentación) usando APIs.

Un CMS tradicional, no sin cabeza, tiene una estructura básica de tres partes: un sistema para almacenar contenido, una interfaz de usuario CRUD (Crear, Leer, Actualizar, Eliminar) y varias maneras de mostrar datos a los visitantes (frontend). En este sistema tradicional, el backend combina bases de datos y servidores que hacen funcionar el sitio, mientras que el frontend es la parte orientada al usuario del sitio web, que los usuarios ven e interactúan cuando lo visitan.

En los CMS tradicionales, el backend y el frontend son inseparables, un atributo a menudo llamado “monolítico” porque forman una estructura única que no se puede separar sin comprometer su integridad.

Los CMS sin cabeza cambian esta fórmula proporcionando un backend y un sistema API para comunicarse con un frontend o capa de presentación separada en lugar de entrelazar los dos de manera inseparable.

¿Qué es WordPress sin cabeza?

múltiples insignias pequeñas, todas con el logo de wordpress

Como vos ya podés imaginar, WordPress sin cabeza es una variante de la arquitectura monolítica tradicional de WordPress que implementa los principios de los CMS sin cabeza. Este enfoque utiliza WordPress para la gestión de contenido, mientras que la capa de presentación es una plataforma diferente (frontend).

En efecto, WordPress actúa como el centro de gestión de contenido e interacción con la base de datos donde los desarrolladores y creadores de contenido pueden crear, editar y gestionar contenido. Este contenido luego se expone a otras plataformas usando la REST API de WordPress o un esquema de GraphQL, disponible para consumo en cualquier stack tecnológico o marco que los desarrolladores decidan utilizar para la capa de presentación.

Este modelo abre muchas posibilidades interesantes. Por ejemplo, Next y Angular son marcos de frontend populares. Las aplicaciones web construidas usándolos podrían recuperar y mostrar contenido realizando llamadas API al gestor de contenidos de WordPress. Otros casos de uso potenciales incluyen aplicaciones Android o iOS que consumen la REST API de WordPress para mostrar contenido.

Como podemos ver, la arquitectura sin cabeza permite a los desarrolladores interactuar con muchas otras plataformas, proporcionando más flexibilidad para proyectos complejos de desarrollo web.

¿Cuáles son los pros y contras de WordPress sin cabeza?

múltiples stacks de desarrollo web que podés usar con wordpress sin cabeza

Pros de WordPress sin cabeza

Flexibilidad y escalabilidad

Uno de los beneficios de WordPress sin cabeza es la flexibilidad. Al separar la capa de presentación del sistema de gestión de contenido, los desarrolladores tienen más control sobre el diseño y la funcionalidad de la capa de presentación sin preocuparse de cómo afecta al backend de WordPress.

Esto significa que los desarrolladores pueden usar bibliotecas de frontend y marcos de JavaScript líderes mientras se benefician de las potentes funciones de gestión de contenido de WordPress.

Además, algunos ven a WordPress sin cabeza como un método para escalar y hacer que tu sitio web esté preparado para el futuro. Dado que es probable que las aplicaciones futuras apliquen principios API actuales, la arquitectura sin cabeza está mejor preparada para adaptarse a futuros marcos y tecnologías que el WordPress monolítico.

Optimización de procesos

Separar el front y el backend significa que pueden operar de forma independiente. Pueden estar en diferentes servidores web, y los desarrolladores pueden optimizar cada aplicación para sus tareas.

Seguridad

Dada su popularidad, WordPress es un objetivo común para hackers que buscan robar información confidencial y obtener credenciales de usuario. En comparación con una implementación sin cabeza, la arquitectura tradicional de WordPress es un paquete “todo en uno”, lo que puede facilitar el trabajo de un hacker al darles acceso a todo el sitio de WordPress.

Las implementaciones sin cabeza están separadas por naturaleza, manteniendo el backend mucho más privado que en las aplicaciones web monolíticas. Separar el front y el backend también significa que si un extremo se ve comprometido, esa brecha de seguridad no necesariamente afectará el otro extremo. En algunos casos, el frontend puede perder acceso al contenido si el backend de WordPress se ve comprometido, pero el backend no se verá necesariamente afectado si una aplicación frontend se ve comprometida.

Gestión de contenido para múltiples canales

Debido a que el frontend no confina a los desarrolladores al entorno de WordPress, una implementación sin cabeza puede proporcionar contenido para múltiples canales, como aplicaciones móviles, sitios web de una sola página, gadgets de IOT y redes sociales.

Contras de WordPress sin cabeza

programador codificando en una laptop

Más tareas de mantenimiento

El enfoque sin cabeza implica que estás ejecutando dos instancias, el backend de WordPress y una aplicación de frontend separada. Interactuar con más plataformas significa más tareas de mantenimiento, lo cual es especialmente crítico si se manejan parches de seguridad para una o ambas.

Algunas bibliotecas de frontend tienen una curva de aprendizaje pronunciada

Si es tu primer proyecto usando WordPress sin cabeza y solo has utilizado HTML y CSS para plantillas, puede que tengas que atravesar una curva de aprendizaje pronunciada antes de implementar efectivamente una biblioteca de frontend. Podrías necesitar contratar a un desarrollador frontend dedicado para el equipo para cerrar la brecha.

La REST API de WordPress puede ser lenta

Si no optimizás tus llamadas API, pueden ser muy lentas, especialmente cuando agregás múltiples plugins al backend de WordPress. El controlador REST predeterminado de WordPress carga mucha más información de la necesaria para construir un sitio básico, lo que lleva a tiempos de respuesta muy largos para llamadas simples.

Los desarrolladores necesitan hacer ajustes a las llamadas para asegurar un alto rendimiento.

Construcciones personalizadas y complejas pueden requerir más tiempo y recursos

No hay manera de evitar el hecho de que WordPress sin cabeza añade una capa de complejidad a cualquier proyecto relacionado con WordPress. Si bien implementarlo ofrece muchos beneficios, también le da al equipo otra base de código que mantener y requiere habilidades específicas de desarrollo web.

Este enfoque está más allá del alcance de desarrolladores web no programadores que usan constructores de páginas como Elementor, ya que necesitás tener un conocimiento profundo del desarrollo full-stack de WordPress y balancear al menos dos plataformas diferentes.

Para algunos freelancers o equipos, estas complicaciones pueden derivar en más tiempo de desarrollo y más recursos necesarios para el proyecto.

¿Deberías usar WordPress sin cabeza?

mujer con anteojos mirando código en una pantalla

WordPress sin cabeza es una alternativa flexible y escalable para construir aplicaciones orientadas al contenido mientras se aprovecha la madurez de la gestión de contenido de WordPress. Es particularmente bueno para entregar contenido a negocios multicanal que necesitan contemplar sitios web, aplicaciones móviles, kioskos digitales y más.

Dicho esto, siempre habrá muchos proyectos de desarrollo web que se beneficiarán del enfoque tradicional, monolítico de desarrollo con WordPress. La mayoría de las veces, el enfoque tradicional funciona bien para sitios independientes como negocios medianos y pequeños (que son la mayoría de los negocios), pequeñas páginas para tiendas físicas, algunos mercados de e-commerce, y sitios que no forman parte de una red multicanal.

En última instancia, las implementaciones de WordPress sin cabeza funcionan mejor para organizaciones con una presencia omnicanal y la experiencia para construir y mantener tal red usando una arquitectura sin cabeza.

Sin embargo, debemos considerar que los CMS sin cabeza son un desarrollo relativamente nuevo que necesitará tiempo para madurar y expresar su verdadero potencial. El tiempo dirá hacia dónde irá WordPress sin cabeza desde aquí y para qué nuevas aplicaciones puede ser utilizado.