CMS Overview

Introduction

NEON CMS is headless, meaning that it provides the functionality to manage CMS content, but it doesn’t have any support for rendering and it makes no assumptions about how the CMS content is used.

Some of the key strengths of NEON CMS:

  • Decorate anything. You can freely enrich any of the built in engagement features with CMS content, for example to Competitions, Surveys, Forms etc.
  • Translate and adapt content based on Dimensions. CMS content can be overridden based on passed in Dimensions. This is not only useful for translations, but can also be used in for example A/B testing
  • Personalisation and scripting. All CMS fields can contain conditional and scripting functionality. If the Member is known, the entire NEON Member model is available for further deep personalisation. Furthermore, any cms content can be referenced from, included within and reused by other CMS fields and configurations, avoiding duplication of common texts etc.
  • Document Definitions and Templates. Multiple CMS fields can be grouped together into CMS Documents, with added validation.
  • Powerful data structures. The CMS functionality offers flexible data types, including references to other Entities’ CMS content. This allows traversing CMS data trees to build up deep content structures.

How it works

All Entity types that can be Published (such as Surveys, Offers, Forms etc) can optionally be extended with CMS content, in the form of one or many CMS fields, which gets returned when querying or viewing Entity Resources through the Loyalty API. CMS fields make it possible to add additional properties or presentation information to an Entity, to help for example a website to render Products and Offers etc.

CMS Documents

In addition to being able to associate CMS fields with for example an Offer or a Survey, there is a dedicated Entity Type called CMS Document, which has no functionality but is solely used for returning CMS fields. CMS Documents are typically used for content managing web pages and other UI elements which are not linked to any specific NEON functionality.

CMS Definitions

Whilst it’s possible to add any number of CMS fields to an Entity, you usually want all Entities of a certain type to have the same fields, for example all Offers may need to have a title, a description, and an image, and you may want to make sure that all these fields are specified before the Offer is published, and that the CMS fields are named the same way across all Offers.

This is where CMS Definition Entities come in. A CMS Definition defines a set of CMS Fields, their label, type, validation and behaviour. Each Entity that supports CMS content can reference a CMS Definition, which then becomes part of the Entity’s validation, and controls exactly what CMS fields need to be specified before the Entity can be published.