Planning Your Content Architecture - Documentation topics on: architecture,dotcms architecture,multilingual,navigation,permissions,push publishing,taxonomy,templates,workflow,.

This documentation is a static copy for this version. For current documentation, see: http://dotcms.com/docs/latest

Planning Your Content Architecture

You can begin creating basic content in dotCMS relatively quickly; a basic content creation process can be used to create your first content and Pages in dotCMS in as little as half an hour.

Once you understand the basics of dotCMS content architecture, it is recommended that you consider the following additional topics to fully plan your content architecture in dotCMS. Although these aren't required for you to begin building pages and understanding how pages are displayed in dotCMS, there are often many ways to accomplish the same goals in dotCMS, and thinking about these up front will help you to make good choices about how to build your site as you get further along in your implementation.

Content Organization

How your content is organized will affect almost every aspect of your site architecture, including the tructure of your site, creation and configuration of your Content Types, entry of your content, layout of your pages, and contents of your code. Since how you organize your content will be reflected in how the content is entered into dotCMS, this also means that once you've made decisions about how your content is organized, it may be difficult to change it later without re-editing all content which has already been entered. This makes content organization one of the most important decisions you should make before fully building out your site and entering all your content.

The following topics should all be considered when planning your content organization:

  • Plan your Taxonomies (different ways to label and organize related content).
  • Review the different types of Navigation in dotCMS and decide what types of navigation you plan to use on your site.
  • Understand the URL Maps feature, and plan how you want to use it for SEO, promotions, and user navigation.
  • Create Your Folder Structure.

Template Types

dotCMS support two different types of Templates, and you should decide what type of Templates you wish to use before building out your Templates and Themes.

  • Standard Templates use the Template Builder to select the layout and Containers, and Themes to determine the styling and look-and-feel.
  • Advanced Templates use embedded code and styling to specify both the layout and styling.

In general, if you only expect to need a few different templates for all your pages, then it usually makes more sense to use Advanced Templates, since they give you much greater control over the layout and design of each Template.

However you should consider using Standard Templates (with a common Theme) instead if you wish to:

  • Create more than 3-5 page layouts.
  • Allow content creators who are not comfortable with programming to create new page layouts or modify existing Templates.
  • Support a number of different types of “look-and-feel” (such as when supporting many different sites or sites for many different customers on the same dotCMS instance).

Controlling Access to Content

Who can add, edit, and view content in dotCMS is controlled by Permissions, including user accounts and user Roles. However there are multiple ways to implement Permissions, depending on how you wish to organize and control access to your content; if you plan to have more than a few users creating and editing Pages and/or content for your site, it is important to plan ahead for how access to your content will be granted.

Permissions on your content can be managed in two different ways:

Content Types

The Permissions on a Content Type determine which users or Roles can access both the Content Type itself and all content of that Content Type. If a Content Type does not have a Site or Folder field (see below), the Permissions on the Content Type are the only Permissions which apply, and they apply

Folders

If a Content Type has a Site or Folder field, individual content items of that Content Type must be placed in specific folders, and each individual content item inherits the Permissions of the folder in which it's located. This method of access control:

  • Uses a common and easily understood framework for access control, making it easy for most users to understand.
  • Allows you to share Content Types among multiple types of users, but give different Permissions for individual content items to different users (such as allowing different departments to create and edit their own content items without being able to edit content items created by other departments).

Note that if a Content Type has a Site or Folder field, the Permissions on the Content Type still also apply. So for a user or Role to be able to access content of the Content Type, they must have appropriate permissions for both the Content Type and the Folder where the indiviaul content items are located. So if a Site or Folder field is used, it is often helpful to open the Permissions on the Content Type, so that the folder Permissions are the primary means of controlling access to the Content Type.

Plan Your Push Publishing Architecture

If you plan to use the Enterprise Push Publishing feature, it is important to understand how Push Publishing works, including what types of content can and can't be pushed, before building out all of your Content Types and content.

Consider Your Workflow

If you plan different users or different groups of users contributing, editing, reviewing, and/or publishing content, consider the Workflow you wish to use to ensure content is managed by the appropriate users or groups at the appropriate times.

Plan Ahead for Translation

If you plan to create multilingual content, or you expect that you may wish to translate your content into other languages at some point in the future, familiarize yourself with the different ways to implement multilingual content in dotCMS.

Your choices for how to implement multilingual content may affect your content organization, template design, Push Publishing architecture, workflow, and other aspects of your content and site design, so it's helpful to plan ahead before building out your content and architecture.