Content authoring concepts for developers new to Sitecore

Abstract

Terms and concepts related to content authoring in Sitecore

This topic briefly introduces Sitecore-specific terms and concepts related to content authoring.

Content Authors

Sitecore users who manage content are called Content Authors. Sitecore provides special content authoring interfaces that enable these users to create pages, add components to pages, edit content displayed by the components, and define personalization rules.

You can review the following topics to understand how Content Authors work with the components that developers build and how they control the position of components inside pages.

Templates

To make content management easier for Content Authors, Sitecore developers configure solution-specific information architecture by creating template items. The concept of templates in Sitecore is analogous to classes in object-oriented programming. Templates, like classes, define a set of fields applicable to a specific type of object.

Templates are the building blocks for everything Content Authors manage in Sitecore. They are used to define:

  • Page types, such as the Home page, landing page, product page.

  • Component data, such as Image, Video, Carousel.

  • Arbitrary items, such as List item, Shared Content Folder.

Developers define templates under the Templates node in the Sitecore content tree.

Content Authors typically do not see these items because their work is limited to the Content part of the tree. They create content items based on existing templates. Referring back to the programming analogy, this is like creating instances of classes.

Layout

The factor that distinguishes page templates from all other types of templates is the presence of layout data.

Layout data informs Sitecore how to render the page. It consists of renderings and placeholders.

Tip

Sitecore developers sometimes refer to layout data as presentation details or layout details because of the way they access the Sitecore interface for editing layout data - by clicking Details on the Presentation tab, in the Layout section.

Renderings

Renderings are discreet elements of the page UI. They can be as simple as a button or as complex as Site Search Results. Content Authors build pages by adding renderings to pages and populating them with content.

When using a rendering SDK to build the front-end application, a rendering item informs Sitecore which front-end component to use to generate the HTML for a particular rendering and which template to use when creating a content item to serve as the component's data source.

Placeholders

Placeholders are places on the page where Content Authors can insert renderings.

Sitecore developers configure rules for placeholders on the page level, and they can also nest placeholders inside components. Different placeholders allow different renderings. For example, a header placeholder could allow Navigation, Logo, and Language Selector components. Because all pages, regardless of type, must have headers, this placeholder would be present on all pages. However, a placeholder that allows only product-related components would only exist on product pages.

Putting it all together

There is no universal formula for how to break up page types, placeholders, and renderings. Sitecore developers must work together with business stakeholders to identify the best approach for each content team.

Fewer page types and shallow placeholder nesting causes more components to be available in more places, and it is up to Content Authors to make sure they properly group components. This approach is preferred when the business wants authors to have a high degree of flexibility in their editing options. For example, when each person on the content team helps manage all parts of the app.

Conversely, more page types and deep placeholder nesting can lead to a very prescriptive editing workflow. This approach is preferable when the business wants to enforce authoring restrictions. For example, when the content team members have specific roles, different roles are responsible for different app parts.