Drupal Basics and Workflow Architecture

Drupal, Originally written by Dries Buytaert, is a free, open-source content management system written in PHP. It’s developed and maintained by a community of 630,000+ developers and distributed under the terms of the General Public License making it completely free to download, use, and modify.

Drupal can run on any computing platform that supports both a web server (like Apache, IIS, Lighttpd, Nginx) capable of running PHP and a database (such as MySQL, MongoDB, SQLite, or Microsoft SQL Server) to store content and settings.

 

Some commonly built web applications in Drupal:

  • Community web portals.
  • Discussion sites.
  • Intranet applications.
  • Social Networking sites.
  • E commerce applications and directories.

 

Drupal doesn’t follow a flat MVC (Model View controller) model, rather a Presentation Abstraction and Controller (PVC) model. In PAC model, different components have their own presentation abstraction and controller structure. Consider a Drupal page which contains some blocks. Each block is rendered separately, with its own model (data), view (theme) and controller (module implementation of hook_block()). The block returns its finished product to the page, which simply incorporates it.

 

Drupal Basic Architectural Diagram:

 

drupal basic

Node:

A node in drupal is a piece of content on a site. For example, on a blog site a blog article will be the node having fields like title, description and author.

 

Module:

In Drupal a module can fall into any of these 3 categories:

 

Core Module-

They are like plug ins enabling them provide different functionalites to a site like search, contact form and polling. Drupal core modules are modules that are important for proper functioning of any drupal application. These modules are included by default in the Drupal distribution.

 

Contributed Module-

Contributed modules are packages of code that have been “contributed” back to the Drupal community by their authors.

 

Custom Module-

Specifically written often for a particular site working on.

 

Hooks:

Hook is a PHP function. They provide a way for a module to extend the functionality of another module.
Themes:

We can think of theme as a collection of resources, including PHP templates, CSS, JavaScript, and images, providing layout and style information for some or all of the Drupal content.

 

Web Geometrics is a leading Drupal Consulting  and Drupal Development Company in India providing cost effective and innovative Drupal applications to all its clients across the globe.

Posted in Blog