CMS Tradicional vs Headless CMS
El día ha llegado: quieres hacer tu web. La competencia en internet es abrumante, no descansa nunca y hoy en día todos los negocios necesitan tener presencia en la Red. Después de tomar esta acertada decisión, te preguntarás por donde empezar. Por supuesto, lo primero es asesorarte adecuadamente con un profesional del sector y de estas tecnologías, como nuestros expertos en desarrollo web de Pukkas. Desde Pukkas redactamos este artículo para ofrecerte una guía en el desarrollo web de tu proyecto.
Wix, Joomla, Drupal, WordPress… ¿Qué significan todas estas palabras y que traen consigo? Las escucharás frecuentemente en cuanto pongas un pie en este mundo, dado que son tecnologías con las cuáles se desarrollan muchísimas webs. Se les llama CMS o gestores de contenido y existen para facilitar el desarrollo web, además de permitir a usuarios no asiduos y con conocimientos técnicos, editar y trabajar el contenido de su página web.
¿Qué es un CMS?
Los gestores de contenido existen desde hace mucho tiempo. Desde un principio, las empresas que desarrollaban webs creaban sus propios gestores de contenido para que los responsables finales pudieran editarlos. Sin embargo, hoy en día la solución estándar es utilizar un CMS antes que desarrollar una aplicación propia como se venía haciendo anteriormente.
Es importante destacar que los CMS se actualizan constantemente de acuerdo a nuestras nuevas tecnologías y nuevas demandas de los usuarios al moverse por Internet. La presencia en la red ya no es solo tener una web, sino estar vivo de verdad y transmitir tu información por múltiples canales como aplicaciones móviles, marketplaces, otras webs… Y aquí fue cuando surgió el concepto del Headless CMS.
CMS Tradicional
En esta categoría incluimos los CMS mencionados anteriormente, como WordPress o Wix. Estos CMS además de permitir la gestión de contenido de forma cómoda y sencilla, también cumplen con la función de constructores de la web entre otras funcionalidades.
El CMS que escojas va casado con las funcionalidades y, en menor medida, el diseño que tenga el sitio web. Los datos y la propia web se convierten en dos partes que están conectadas entre sí de forma obligatoria y que forman la misma tecnología. Desde el acceso a base de datos hasta la capa de presentación, todo pasa por el CMS, con sus pros y sus contras.
Esto hace que para todos los CMS haya una gran cantidad de extensiones y temas, los cuales nos permitirán personalizar nuestra web, tanto en funcionalidad como en diseño. El punto negativo es que hay que dedicarles un tiempo considerable al mantenimiento, dado que el CMS hay que actualizarlo regularmente, así como todas las extensiones y añadidos que vayamos integrando.
Tampoco podríamos presentar los datos de este CMS en otro sitio, como en una aplicación externa, por ejemplo. Lo cierto es que sí puedes encontrar formas de hacerlo en casi cualquier CMS tradicional, pero no dejan de ser plugins que te generarán una API que dará problemas según cómo, ya que los datos están almacenados como ese CMS lo necesita, y no de forma genérica para ser consumidos por cualquier tecnología.
Sin embargo, si tu proyecto no tiene la proyección y la escalabilidad para derivar en otros canales, un CMS tradicional puede ser la mejor opción para ti, ya que es una opción muy fácil de instalar y utilizar.
Headless CMS
Este es un nuevo concepto en el campo de los CMS y muy probablemente no hayáis oído acerca de él. Hasta ahora hemos hablado de CMS completos, que junto a la gestión del contenido también crean la parte visual.
Pero con el concepto Headless CMS nos encontramos algo diferente, y es que aquí solo tenemos la parte del gestor. Os preguntaréis qué sentido tiene, ¿para qué quiero un gestor de datos si no dispongo de la parte frontal? Pues la respuesta es simple y es que la información que mantienes en estos gestores se puede utilizar para nutrir múltiples canales. Por ejemplo, imaginemos que además de una web, tenemos una aplicación móvil. Desde un CMS headless podemos gestionar los datos y centralizarlos en nuestro gestor, el cual dispone de una API (una serie de funciones que se pueden consumir desde cualquier web o aplicación) que consumirían los dos canales. Y si quisieras desarrollar otro canal, toda la gestión de datos ya la tendrías hecha y disponible para el uso.
Entre los Headless CMS más utilizados encontramos Strapi. Strapi es una de las opciones sugeridas para proyectos que necesitan de las características mencionadas recientemente, además de aplicaciones móviles u otras webs desarrolladas con tecnologías más modernas como React.js o Angular, las cuales solo sirven para la parte frontal y necesitan consumir los datos desde otra fuente.
Strapi es especialmente útil dado que en función de la definición de tu modelo de datos, ya te crea automáticamente los endpoints y las funcionalidades de la API correspondientes. Si necesitáis cualesquiera de las funciones mencionadas anteriormente, este tipo de CMS se convertirá en vuestro aliado y podréis beneficiaros enormemente con su uso.
La parte menos positiva, como ya podréis imaginar, es que este tipo de CMS requieren de un desarrollo front-end a medida. Algo que nos va a dar mucha más flexibilidad y nos va a permitir una escalabilidad enorme, a cambio de un coste inicial más elevado.
Conclusiones
Es bien sabido por todos que el mercado tecnológico cuenta con una gama de opciones increíblemente grande y que en muchos casos puede crear problemas y conflictos a la hora de elegir las tecnologías a emplear. Nuestra recomendación, la tecnología a utilizar dependerá siempre de las necesidades del proyecto en particular.
En estos momentos, WordPress sigue siendo el gestor de contenido más utilizado y prevemos que lo será durante más tiempo. Aún así, hay que tener claro que no es la mejor opción para todos los proyectos y que otros pueden necesitar de una tecnología más moderna y avanzada, sobre todo en proyectos que van más allá de una web.
Septiembre 2021
Robert Garzón / Programación y Desarrollo Web