Introduction to Content Types

In order to get the most out of Drupal, you need to understand content types. A CMS can (and in most cases, should) have different content types defined to assist in classifying and displaying site content in a flexible and efficient way. Examples of content types include news articles, blog posts and basic pages. But with Drupal, the types are only limited by your imagination.

When creating new content in Drupal, you must first select the content type. You might choose to create a blog post, for example. You're then prompted to fill out a form that has fields and settings that have been defined specifically for that type. Drupal calls each piece of content a 'node', an unfortunate naming choice, but don't let it confuse you. Some people find it useful to think of nodes as pages, but it is more accurate to think of them as chunks of content that can be rendered in a variety of ways (including as a page).

By default, Drupal 7 defines two content types, 'Article' and 'Basic page'. You can add additional types by either enabling certain modules, such as Blog or Webform, or you can define your own custom types. 

The Field module is an important component of content types in Drupal 7. Previously known as CCK in version 6, it provides site builders with the ability to add custom fields to their content types. The Ascend Project, which is featured in the above video, involves building a community site for rock climbers. In it we use the functionality provided by the Field module to add two custom fields, latitude and longitude, to our 'Climbing Area' content type. This flexibility with regard to content types is a part of what makes Drupal different from other content management systems.

This video is the fourth in the Ascend Project series. The Ascend series is an introduction to Drupal that walks through the process of creating a community website using Drupal 7 from the ground up. The series will cover all aspects of creating a Drupal-powered site including: installing themes, modules, defining views, groups, blogs, users and more, all without writing code.