Headless CMS

Un Headless CMS es a su vez una evolución y una reducción de un CMS clásico: algunos componentes integrales del sistema son retirados para hacerlo compatible con las tareas más diversas. Esto es posible debido a que tanto el frontend como el backend no están vinculados de forma monolítica entre sí.

CMS:  Content Management System. Se denomina así a toda herramienta de software orientada a la creación, administración y gestión de contenidos.

Ventajas de un Headless CMS frente a un CMS clásico

En un Headless CMS la tarea de mostrar el contenido gestionado con un CMS en diferentes medios queda relegada a la página web (la vista). Al CMS se le quita el encabezado, por así decirlo (de ahí su nombre). En su lugar se integra una API (Application Programming Interface) a la que pueden acceder las páginas web y las aplicaciones, de forma que los diferentes medios regulan individualmente la presentación del contenido: el backend y el frontendestán desacoplados.

Interfaz

 

Una API REST es una interfaz sencilla y flexible que emplea métodos HTTP de consulta como PUT, GET, POST y DELETE para comunicarse, por medio de los que un cliente puede acceder a los datos del servidor, solicitarlos o modificarlos. Por lo tanto, REST sigue fundamentalmente el estilo de arquitectura de la Web. Las API REST se construyen en base a estos criterios:

  • Los servidores facilitan los recursos: Una API REST también está disponible para aplicaciones externas a través de un servidor. Por lo tanto, el acceso no funciona solo de manera local.

  • Las direcciones identifican elementos: Los diferentes tipos de aplicaciones requieren diversos formatos de archivos. En REST, el URI/URL no toma como referencia a un recurso en un formato determinado, sino al elemento en sí. Mediante la negociación de contenido, los clientes pueden solicitar el elemento en el formato deseado.

  • Los mensajes son claros y evidentes: Cada mensaje dirigido al servidor es un mensaje cerrado en sí mismo que no hace referencia a uno anterior.

  • Vinculación de los recursos mediante enlaces: En REST, los objetos están conectados entre sí por medio de hiperenlaces, lo que resulta en una navegación sencilla.

Si se siguen estos principios estructurales, la comunicación entre servidor/API y los diferentes clientes tiene lugar sin problemas, de ahí que la arquitectura REST resulte perfecta para la API de un headless CMS.

Ventajas de la separación del backend y el frontend

La separación resulta útil desde dos perspectivas:

  1. Desarrollo del backend: En este caso se debe a que se desea divulgar contenido en más de una edición, no importa la plataforma a través de la que se distribuyen los contenidos, pues la API REST solo proporciona los datos (JSON), los cuales pueden leerse desde cualquier tipo de frontend independientemente de la tecnología con las que se programen.

  2. Desarrollo del frontend: Los diseñadores web ya no están ligados a las condiciones del gestor de contenidos al igual que el lenguaje de programación tampoco está definido. Esto permite la creación de aplicaciones móviles en diversidad de plataformas. Únicamente han de recibirse y editarse los datos en bruto, ofreciendo un margen más amplio de maniobra en su presentación que con los CMS clásicos.

Otra de las ventajas es la capacidad de realizar solicitudes dinámicas. En los CMS clásicos la consulta de nuevos contenidos en una página web suele hacer que la página se cargue de nuevo. Por el contrario, la API REST entrega datos dinámicos que se pueden integrar en cualquier momento en la estructura de la página sin necesidad de volver a cargar la página entera.

 Por tanto, las ventajas se pueden resumir en:

  • Cantidad ilimitada de frontends.

  • Posibilidad de combinarse con diversos lenguajes de programación.

  • Diseño más flexible del frontend.

  • Continuidad mediante desacoplamiento.

  • Datos dinámicos.

Formas de asegurar un Headless CMS

En este apartado se muestran varias formas de aumentar la seguridad en un headless CMS:

Referencias

Elaboración propia.

Headless CMS: Headless CMS

WordPress REST API Handbook: Authentication – REST API Handbook | Developer.WordPress.org

WordPress Security Guides: Security – Documentation – WordPress.org