08 / 10 / 2020

Headless CMS - What's that?

By Jesper Reck-Jensen, Chief Developer, Forte Advice

When you manage content on a website, you use a Content Management System (CMS). CMS has developed a lot since the beginning of the web, and right now the biggest trend is headless CMS. But what exactly is that?

For a long time and with good reason, many websites have been built upon monolith CMS – giant CMS that can do whatever the heart desires and where all functionalities are gathered in one system. From simple content management, advanced layout builders and user databases to newsletters and e-commerce with order management functions.

Anyonewho has worked with web content has comeacrossone of these systems and most likelyone of the classic CMS such as enterprise closed source (Sitecore, Episerver etc.), open source (WordPress, Drupal, Umbraco etc.) or home-built systems. They can be based on different development languages such as PHP or .NET and talk to different databases. Either way, the most important role of the CMS is to help editors manage and structure a website's content as easy and user-friendly as possible.

The classic CMS consist of the editorial user interface, where the content is controlled (backend): admin, back office, etc. And then, we have the actual display of the website (front-end): What the users see in their browser. This content can be managed using the CMS' theme engine – page templates and theme files containing the content’s design and display logic. So, in the classic CMS, we both have the "body" and the "head".

MORE FLEXIBILITY IS NEEDED

Over the years, the need to implement third-party tools has increased; several development languages have emerged. Data was implemented from third-party tools in classic CMS via APIs (Application Programming Interface). In addition, the need to “reuse" CMS content and data elsewhere rose. Therefore, today most CMS have their own API that can be used in other channels. In addition to the classic channel (the website in the browser), you can take content from the CMS via its API and use it in other channels such as mobile apps, KIOSK software etc.

This configuration is called decoupled CMS, which means you can apply your own "heads" (displays) with the display that comes with the CMS or as separate displays in various channels. However, this setup is not 100% "headless".

THE PURE HEADLESS CMS

This background leads us to the 100% headless CMS, which has no predefined display layers. There is only one backend where editors can structure and manage content, which can subsequently be displayed via the built-in API. This sharp separation of content and display means that you are forced to think "content first" and not together with a specific display in the front end. It is based on the idea that the content can and must be used in many channels.
Dette kalder man for decoupled CMS, hvilket vil sige, at man kan sætte sine egne ”hoveder” på(visninger). Enten sammen med den visning, der følger med CMS’et, eller som separate visninger i diverse kanaler. Dette betyder dog, at dette setup ikke er 100% ”hovedløst”.

WHERE IS DATA LOCATED?

The classic CMS is often located on one server, meaning the display and backend have shared server space. In addition, there may be additional technical server setups that optimize speed, security, etc. In 9 out of 10 times, a headless CMS is a SaaS solution (Software as a Service), always available and up to date. The display of the individual channels can be hosted in many different places, depending on the type of channel (website, app, etc.) or whether the data is static or dynamic. The flexibility is enormous.

BENEFITS AND "CHALLENGES" OF HEADLESS CMS

A headless CMS has many benefits, but you need to be aware of a few challenges.

The benefits include:

  • Reuse of data across all channels
  • Great for "pure” content
  • Great for a lot of content of the same type. E.g. e-commerce products and the like
  • Security is high, as the connection between the data and display is decoupled
  • Headless CMS can be used with other data sources and third-party tools where needed, such as:
    • Newsletter system
    • POND
    • PIM
    • CRM
    • E-commerce
  • Developer friendly - free choice of development language for the front-end channels
  • Platform independent as there will often be SaaS
  • Secures your content for the future
  • Start small, but there is no need to start over when the solution needs to grow or be developed further
  • Speed - A headless CMS is often associated with fast solutions (this depends on the technology that is chosen for display)

Potential challenges:

  • It can be harder to make very special layouts in a headless CMS
  • It is more difficult to get an immediate view of what you are working on because of a less visual editorial experience (however, many headless CMS providers work on improving this)

IS HEADLESS CMS A GOOD CHOICE FOR ME?

There is no doubt that a headless CMS has many benefits. From a developer's point of view, headless is a fantastic context in which to work. The question is whether all editors will feel just as blessed, especially if they are used to working very visually with their content. However, it will soon be easy to make ends meet. So, if you have a lot of data and content with identical characters, headless CMS is the way forward, and it is clearly here to stay. The market will grow, and the products will eventually evolve for the benefit of the editors, developers and end users.

WEBINAR ON DEMAND: HEADLESS CMS - FROM CONSIDERATION TO BENEFITS & CHALLENGES

If you are interested in learning more about headless CMS and its possibilities, you can watch the webinar we facilitated in collaboration with IT Minds. Here, you get examples and advice on how to use headless CMS from our Chief Developer, Jesper Reck-Jensen, and Senior Software Developer at IT Minds, Lasse Fisker. Watch the webinar here (in Danish):