In Cortex CMS, a
ContentType allows a superadministrator to model what kind of content gets delivered to the consuming application - your corporate or personal blog, resource center, marketplace, website and so on.
Unlike systems that hardcode your basic content types out of the box - Blogposts, Media, etc. - and require you to create tightly coupled plugins to mix in additional functionality, Cortex CMS allows you to compose your content types from the ground up, specific to each business case. To accomplish this, you combine the necessary
FieldTypes that make up your content. Every
FieldTypeavailable for use is provided as part of a plugin, allowing you to extend the system without directly modifying the 'core' platform.
Once a content creator has created actual content based on a
ContentType, it is saved as a
ContentTypes, superadministrators make use of individual
FieldTypes, which can provide anything from input fields with types such as Text, Boolean, User, Media to static text, informative widgets, video & data previews, and much more.
Once a content creator has created content based on a
FieldItem is created for each of the
FieldTypes that make up the
Content creators expect a creation experience that properly utilizes screen real estate, is informative, and can be reconfigured based on new business needs and challenges. Unlike systems such as Drupal, which simply stack each
FieldType added to a
ContentType one after the other in a giant, vertical view, Cortex CMS allows superadministrators to design the create/edit/index experience by way of
Decorators. These are simple JSON objects that, based on their
Decorator type, adhere to a documented schema.
There are currently two primary
Decorator types (though more can be added via plugins):
Index. By setting the type to
Wizard and adhering to its documented schema, a superadministrator can set up a CRUD interface that that can drop
Fields into a flexible, responsive grid, configure individual
FieldTypes for display to the content creator, toggle a WYSIWYG editor, apply CSS classes directly to the rendered
Field, utilize the data from one
Field in another
Field, and so on.