What are the basic concepts for Drupal?
This article aims to explain some basic terms and concepts that Drupal is built on.
What is Drupal?
Drupal is a framework, from which you could build a CMS or even a platform for something else. For example I use it as a CMS and as a platform for CiviCRM.
Modules
Modules allow you to extend the core functionality of Drupal. Other systems might describe modules as plugins for example. Community contributed modules are called Contrib modules, and the main modules that are installed in a default install are called Core modules. Core modules are located in /core/modules folder, and your extensions should live in the /modules folder.
Entities, Nodes and Fields
Everything that you create is an Entity. Content that can be seen, is most commonly a Node entity. There are numerous node types and here are some examples:
- Basic page
- Article
- Taxonomy term
- User
- Comment
- Block
All node entities have various Fields, including for example a Title property or Tags or Body. You can even add your own fields to existing nodes. There are many different types of fields, here are some examples:
- Boolean
- Date
- Comments
- Number
- File
- Content
- Text
- Taxonomy
- Image
Fields that have been added to nodes, can have various settings. For example the File type can be configured to allow a single file upload, or multiple files.
Edit forms
Forms that you use for editing are referred to as Edit form. The fields in Edit forms can be configured to optimise the process of editing content.
Blocks
Blocks are bits of content that can be displayed in a particular location. For example the navigation menu is a block.
Views
Views is a core module that allows you to create query driven lists of content.
Users, Roles and Permissions
Users are accounts that can be used by people to log on to your Drupal site. You can assign permissions to roles, and then give users particular roles so that they can perform certain tasks. Some standard roles include:
- Anonymous user - public visitors to your site
- Authenticated user - a visitor who has successfully logged on
- Administrator - a person with the highest level of access
Themes
A Drupal theme creates the look of your website. There are also themes for the look of your administration pages. Some themes are intended to be developed and come as a Base theme, from which you should create your own Subthemes. Other themes are fully functional without any further work from you.
Hooks
An advanced feature of Drupal is the availability of Hooks, which allow you to change a modules behaviour with modifying the module itself, protecting the module during upgrades for example.
Thanks for visiting,
Steven