Overview of Drupal 6.x Tuan Pham July 30, 2010 Reference: .

20
Overview of Drupal 6.x Overview of Drupal 6.x Tuan Pham July 30, 2010 Reference: http://drupal.org/getting- started

Transcript of Overview of Drupal 6.x Tuan Pham July 30, 2010 Reference: .

Overview of Drupal 6.xOverview of Drupal 6.x

Tuan Pham

July 30, 2010

Reference: http://drupal.org/getting-started

                          

Tuan Pham2

ContentsContents What is Drupal?

Why do we need Drupal?

How can we use Drupal?

How does Drupal work?

How is Drupal’s database organized?

                          

Tuan Pham3

Drupal - Content Management FrameworkDrupal - Content Management Framework

Drupal is a Content Management FrameworkContent Management Framework: configurability and customization.

A softwaresoftware that organizes and displays web pages like articles and blog postings (along with other contents).

                          

Tuan Pham4

Why Drupal?Why Drupal?

We need Drupal for Content Management Content Management SystemsSystems (Blogs, Forums, Social Networks).

Drupal is powerful, configurable and customizable.

DrupalDrupal v.s. Joomla!Joomla!: Joomla! for end-users – Drupal for developers.

We want to study Databases and Web Scripting in a real systema real system.

                          

Tuan Pham5

How can we use Drupal?How can we use Drupal?

Download Drupal at: http://drupal.org/Download Drupal at: http://drupal.org/

Requirements:Requirements:

Web ServerWeb Server

PHPPHP

Database Server (MySQL or PostgreSQL)Database Server (MySQL or PostgreSQL)

                          

Tuan Pham6

Drupal – Front-EndDrupal – Front-End

                          

Tuan Pham7

Drupal – Administration AreaDrupal – Administration Area

                          

Tuan Pham8

Drupal – Class WebsiteDrupal – Class Website

                          

Tuan Pham9

Drupal – ShowcaseDrupal – Showcasehttp://drupal.org/node/141187http://drupal.org/node/141187

                          

Tuan Pham10

Showcase: http://www.thongtincongnghe.com/Showcase: http://www.thongtincongnghe.com/

                          

Tuan Pham11

Showcase: http://www.thongtincongnghe.com/Showcase: http://www.thongtincongnghe.com/

                          

Tuan Pham12

Architecture of Architecture of a Drupal applicationa Drupal application

Client Browser

1 Request

Drupal Core

DB

2 3

6 Response

Web Server + PHPModules

MySQL or Postgre SQL

                          

Tuan Pham13

Drupal 6.xDrupal 6.x

An open-source framework for web-based content management systems.

Contains only core modules Drupal Core.

Can be extended with additional modules.

A module: Includes regular functions and hook

implementation functions.

Hooks are similar to interface abstraction in OOP.

Our Custom Our Custom ModulesModules

Soc

ial N

etw

ork

Soc

ial N

etw

ork

Mod

ules

Mod

ules

Other

Other

Modules

Modules

Drupal CoreDrupal Core

Drupal Logo

Drupal Organization

                          

Tuan Pham14

The Drupal FlowThe Drupal Flow

                          

Tuan Pham15

Main FunctionalitiesMain Functionalities

Content Management: Node, Content Type, and CCK by Group 1 (Kevin Tang, Sean Campbell, Amy Liu) and Group 2 (Tyler Jones, James Admire, Andrew Monk)  

Taxonomy System by Group 3 (Nathan Brake, Larry Baker, Wesley Kos)  

Views by Group 4 (Kevin Mc Intosh, Catharina Vijay, Matthew Insley)  

Menu System by Group 5 (Fahmy Mohamed, Max Muller, Spencer Forell)  

User Management: Users, Access Control by Group 6 (Wade Cline, Mohammed Alkhater, Yuri Alejandro Garcia)  

Blocks (or Panels) by Group 7 (Mark Ritzman, Chad Campell, David Manela)  

Themes by Group 8 (Alex Loescher, Robert Partch, Robert Pimentel)

                          

Tuan Pham16

Drupal’s DatabaseDrupal’s Database

Schema:http://classes.engr.oregonstate.edu/eecs/summer2010/cs275/sites/default/files/drupal_60rc3.pdf

                          

Tuan Pham17

Example Slide: NodeExample Slide: Node

A node is a piece of content an instance of a content type. E.g.: a page, a story, or a blog entry

Nodes are stored in two tables: node and node_revisions.

node_revisions

PK vid

nid uid title body teaser log timestamp format

node

PK nid

U1 vid type language title uid status created changed comment promote moderate sticky tnid translate

1

M

Tables for Nodes

                          

Tuan Pham18

Example Slide: Drupal’s Access Example Slide: Drupal’s Access Control MechanismsControl Mechanisms

The Drupal Core provides two access control mechanisms: Access control for functional features Access control for individual nodes.

Add-on modules implement these mechanisms.

                          

Tuan Pham19

Example Slide: Access Control for Functional Example Slide: Access Control for Functional FeaturesFeatures

Determines which users utilize each of the application features.

Is based on roles and permissions.

users_roles

PK uidPK rid

permission

PK pid

rid perm tid

role

PK rid

U1 name

users

PK uid

U1 name pass mail mode sort threshold theme signature created access login status timezone language picture init data

1 M

M 1

1 1

                          

Tuan Pham20

ConclusionConclusion

Drupal is a Content Management Content Management FrameworkFramework to build Content Management Content Management SystemsSystems.

Drupal is powerful, configurable and customizable.

Drupal uses NodesNodes for the contents.