• Headless CMS terminologies, and their meanings.

Content Model

The first step to storing information in a Headless CMS is to create your content model. If you’re new to the Headless CMS world, this term may be unfamiliar to you, but it’s simple to understand.

Content ModelContent Model
(click to enlarge)

Let’s understand the content model with an example. Let’s say you want to store all the products in your shop in a CMS. As a first step, you will need to define all the product attributes and their types. For example, a product may have the following attributes (fields):

  • Name (Text Type)
  • Description (Long Text)
  • Price (Number)

The collection of these attributes (fields) will be referred to as the “content model.”
As per the example above, the Product content model will have three fields: name, description, and price, with field types of text, long text, and number, respectively.
Below is the actual screenshot of the Webiny user interface for a content model.

Product Content Model (Webiny User Interface)Product Content Model (Webiny User Interface)
(click to enlarge)

Field / Field Type

As mentioned in the content model section, every content model is a collection of fields, and each field has a type. The field type defines the kind of content you want to store. Webiny supports the following field types:

Field TypeDescription
TextTitles, names, single line values.
Long textLong comments, notes, multi line values.
Rich textText formatting with references and media.
NumberStore numbers.
BooleanStore boolean (“yes” or “no” ) values.
Date/TimeStore date and time.
FilesImages, videos and other files.
ReferenceReference existing content entries. For example, a book can reference one or more authors.
ObjectStore nested data structures.

Content Entry

Each record that you store in the content model is a content entry. For example, a new product record created with the following information is a content entry.

NameRelaxed Sweatshirt
DescriptionTop sweatshirt fabric made from a cotton blend

This one record is a content entry, and each content model will contain multiple content entries.

Content EntryContent Entry
(click to enlarge)