Headless WordPress: desacoplar la capa de presentación

Enviado por Daniel Muñoz Egido el Mar, 22/01/2019 - 09:00
logotipo de wordpress junto a los logotipos de las tecnologías con las cuales desacoplarlo

Headless WordPress no es un CMS, código o lenguaje de programación nuevo, simplemente consiste es separar la capa de presentación (o front-end, lo que nuestros usuarios ven cuando acceden a nuestro sitio) de la capa de administración (o back-end o dashboard).

Tradicionalmente los Sistema de Gestión de Contenidos han sido herramientas muy monolíticas que han gestionado el ciclo de vida del objeto informativo desde su creación o captura hasta su almacenamiento o destrucción, pasando por la entrega o presentación. Pero esta concepción está cambiando motivada principalmente por dos factores: el avance y desarrollo de nuevos lenguajes web que aumentan enormemente las funcionalidades de los tradicionales HTML, CSS y JS, y por la necesidad de especialización dentro de los equipos de desarrollo, ya que muchas de las tecnologías empleadas para la programación web necesitan de un continuo grado de actualización.

En función del grado en el que esta separación se ha producido, hablamos de headless en los casos en los que la capa de presentación ha desaparecido por completo en el CMS, o decoupled en aquellos en los que conviven simultáneamente la capa de presentación habilitada por la herramienta al mismo tiempo que se sirve el contenido para su presentación por otras aplicaciones.

Tanto en unos casos como en otros, esto es posible gracias a las APIs.De una manera simplificada podemos decir que una API (Application Programing Interface) habilita una capa de abstracción a una herramienta para que ésta pueda comunicarse con otras aplicaciones. En el caso concreto de los CMS, será aquella funcionalidad que permitirá que otras aplicaciones se comuniquen con nuestra herramienta para solicitarle contenidos y ésta poder servirselos. Pero como en toda comunicación, ésta debe estar estandarizada, sujeta a una serie de reglas y condiciones. Y es en este punto dónde entra en juego la arquitectura REST (Representational State Transfer).

REST API es el plugin (seguramente lo veremos en el core de WordPress no tardando mucho) que habilita la comunicación entre nuestro WordPress (que hace las funciones de servidor) con otras aplicaciones web (que hacen la función de cliente) para que estos últimos puedan realizar lo que se conoce como acciones CRUD (Create, Read, Update, Delete) utilizando para ello el protocolo de comunicación HTTP y el lenguaje de intercambio de datos JSON.

 

rest-api_0.png

 

Pero después de todo lo que hemos explicado anteriormente, la pregunta acertada sería: ¿para que sirve todo ésto y en que me beneficia? Vamos a ver algunas de los beneficios que nos proporciona REST API:

  • Separación entre el cliente y el servidor. Tanto el servidor, nuestra instalación WordPress, como el / los clientes, las aplicaciones que consumen nuestros contenidos, están totalmente separadas, no dependiendo entre ellas salvo en la necesidad de compartir unas mismas reglas de comunicación y un mismo lenguaje de intercambio de datos.
  • Independencia de tecnologías y lenguajes. Las tecnologías empleadas por el / los clientes no afecta a nuestra herramienta, permitiendo así a los desarrolladores de la capa de presentación emplear aquellos lenguajes que mejor se adapte a sus aplicaciones y usos.
  • Fiabilidad, escalabilidad y flexibilidad. Fiable porque es un sistema de comunicación probado y que ha demostrado que permite realizar las acciones CRUD de manera segura sin que tengamos que preocuparnos de nada más; escalable porque permite la comunicación de nuestro CMS con un número ilimitado de dispositivos que consuman nuestros contenidos; y flexible ya que podemos tener alojados la capa de presentación y de administración en servidores diferentes (o múltiples), lo que permite una mayor optimización.
  • Mejora la experiencia de usuario. Mejora la optimización de la capa de presentación, ya que el contenido se recibe como "texto plano", por lo que la velocidad de la transferencia es muy alta; y permite adaptar dicho contenido a los diferentes dispositivos que esté empleando el usuario, adoptando el principio de "un mismo contenido, múltiples presentaciones".

Headless CMS, o lo que podríamos traducir como CMS sin cabeza, es una forma de servir contenido que si bien no cambia el concepto de entrega o presentación, si modifica sus formas. Por hacer una analogía, si para ir de un punto A a un por B normalmente hemos tardado 6 horas en conche, ahora vamos en coche hasta el aeropuerto y luego cogemos un avión que nos dejará en nuestro punto de destino. Es decir, el objetivo es el mismo, lo que cambia es el medio por el cual lo conseguimos.

Debemos pues permanecer atentos a este concepto y los presentes y futuros desarrollos que se están produciendo actualmente en la industria de los CMSs..

 

Añadir nuevo comentario

Este campo sólo es para verificar que usted es una persona. No será almacenado ni utilizado con ningún otro propósito

HTML Restringido

  • Etiquetas HTML permitidas: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Saltos automáticos de líneas y de párrafos.
  • Las direcciones de correos electrónicos y páginas web se convierten en enlaces automáticamente.

Documentación Hoy le informa que los datos facilitados por usted en este formulario serán tratados informáticamente por Documentación Hoy con el objetivo de publicar su comentario a este contenido. Para poder llevar a cabo esta acción necesitamos su consentimiento explícito. Los datos proporcionados se conservarán mientras no solicite el cese de la actividad. Los datos no se cederán a terceros salvo en los casos en que exista una obligación legal. En cualquier momento usted puede ejercitar su derecho a acceder, rectificar, limitar o borrar sus datos enviándonos un e-mail a info@documentacionhoy.com. Usted puede encontrar más información en nuestra Política de Privacidad.

CAPTCHA
Esta pregunta es para comprobar si usted es un visitante humano y prevenir envíos de spam automatizado.