and Web Development with Drupal

Old School: Simple HTML
◦ Note: HTML is NOT a programming language, but a MARKUP language (tags and NOT commands) ◦ Many developers would use text editors, FrontPage, Dreamweaver

Not-so-Old-School: HTML-in-style
◦ CSS or Cascading Style Sheets, Flash sites ◦ Client-side processing with scripts (JavaScript, VBScript) ◦ Server-side processing with ASP / PHP ◦ Need for dynamic sites and pages emerged

DHTML) to change interface behaviors within a specific web page Changes are triggered by mouse and keyboard actions.  Uses client-side scripting (e.g. or time intervals  . JavaScript.STATIC DYNAMIC  Normally just plain html or with CSS  Design doesn't change depending on user input.

and more services for visitors. . Has back-end processing an a database May have more capabilities like a search tool.STATIC  DYNAMIC    All content is placed manually by developers (designtime page construction) No back-end processing The site itself cannot offer any other service to visitors except for viewing of content    Pages of content can probably be constructed "on the fly“ Users may be able to “update” the site by putting in content over time. or members. without the need of a developer / the webmaster.

New School: CMS ◦ A movement to create web sites without having to download any desktop software had begun .

 The Idea Makes the necessary changes ONLINE without the need downloading the pages and editing with desktop programs Saves the changes hasslefree. and claps their hands in sheer delight. User logs in the site through the browser .

 The Solution .

publishing.the workflow and processes in place to create.any information published on a Web application that enables the creation. collection.Content Management System • • • Content . share. images. be it text. videos Management . and control information during its lifecycle. and presentation of content . HTML. System .

  Joomla! Wordpress     Drupal Expression Engine Vivvo CMS Squarespace     Movable Type eZ Publish Mambo Textpattern Proprietary Open Source .

A ___________ site allows pages of content to be constructed "on the fly“ by users and not necessarily by developers.  Content Management System 1. CMS stands for ___________________________ client-side 2. Dynamic pages use __________ scripting (e. etc. Wordpress.  dynamic 3. . Drupal.g. Joomla!. Name at least two (2) examples of open source CMSs. JavaScript. Mambo. DHTML) to change interface behaviors within a specific web page.  4 and 5.

An overview of the architecture. . features and basic site-building workflow of the CMS.

   Originally written by Dries Buytaert as a message board. The name was taken from the now-defunct website. Drupal is an English rendering of the Dutch word “druppel”. Drupal became an open source project in 2001. . which means “drop” (as in “a water droplet”). whose code slowly evolved into Drupal. but mistyped it when checking the domain name and thought the error sounded better. Buytaert wanted to call the site “dorp” (Dutch for “village”) for its community aspects.

with release parties in multiple countries.20 was released in December 2010. was released on 5 January 2011. Support for Drupal 5 has been discontinued. the latest Drupal 6. while D6 and D7 are actively maintained.    Now has a vast online community: drupal. . and so far the most stable and widely-used version. Drupal 7.

training site Dating site Anything you can think of… . Portal / Directory Brocure site. flickr like photo drop Social community site. job post board Video site like youtube Project management site CRM. ERP. portfolio. SCM. Wiki Shopping cart system E-learning.• • • • • • • • • • • • blog Forum Online newspaper.

including corporations. non-profits. Drupal also won several Packt Open Source CMS Awards and three times (in a row) won the Webware 100. An estimated 7. schools. Joomla! and Wordpress.2 million sites used Drupal as of July 2010. however. governments. are still more popular and used by developers.   As of July 2010. . media & publishing companies. and individuals. hundreds of well-known organizations use Drupal.

It has a few and a lot of really poor plugins. • • Wordpress is not designed to be highly scalable to many simultaneous is easier and faster to set up than Drupal. quality add-ons. extensible content types. nor does it have flexible roles. nor does it have plentiful well-tested. permissions. Wordpress is still a sound choice of CMS for SEO and security. Caveat: Trying to force Wordpress to do something it cannot do easily with very popular plug-ins can be worse than suffering the learning curve of Drupal. Wordpress could be the better choice for blogs since it is better at being a blog than Drupal. This is something of debate. so if wordpress satisfies a simpler project‟s requirements then by all means use it. Drupal was designed to be more of a generalist: it‟s for making „anything‟ and is far more robust. .• • • • Wordpress was designed only to be a blog with some easy add-ons.

layout and presentation as html and css). reliable and flexible framework for development. It uses a „separation of concerns‟ architecture to cleanly and consistently separate structure.• • • • • • • It has superior session handling for a CMS. . It has superior security. form. Other CMS‟es do a very very bad job of at least one of the above. It is a more consistent. It heavily uses „defaults overrides‟ in code in the form of hooks and in themes in the form of templates. This makes it extremely flexible. function. and presentation in layers (ie: php from data as db/xml. It is considered better for SEO.

• Drupal has a steeper learning curve than wordpress or Joomla. Drupal and it‟s developers make no excuse for this is a robust. the drupal community is constantly addressing usability and user-experience issues because they want the industry market share. • • . flexible tool That said.

widgets and settings used to configure the system or manage content.  . UI is a user-interface. „Site-building‟ activities refer to configuring settings or managing content through the UI. which is a general term for the layout of options. such as building navigation menus.

modules and themes. Drupal has a core filesystem whose functionality can be extended using the UI itself.   . Drupal is a database-driven („dynamic‟) application. It requires a database. The UI settings are stored in the database.

org • • • .• Packages of files in a directory that you upload into drupal‟s module space (/sites/all/modules) Add functionality to drupal „Core‟ Modules come shipped with drupal „Contributed‟ Modules are downloads from drupal.

. Like „skinning‟ your media player.   Themes can be easily changed in the UI. Packages of files in a directory that you upload into drupal‟s theme space (/sites/all/themes) Themes adjust the site layout and style.

Access information.Drupal‟s database tracks things like : • • • • • • • Site and Module settings. Logging information. User‟s information. Permissions and User Roles. System Paths Content and content metadata .

A „page‟ and „story‟ for example are node types that have a specific node settings. and can be „specialized‟. • • . At a minimum it is a title and a body.• A node is the primary form of content in a drupal site. A node type is a blueprint for creating instances of content of a particular type.

This is important!! Ex: A user is not a node. . Knowing this is important for evaluation of what can and cannot be easily done through the UI. A taxonomy is not a node.    Not everything in Drupal is a node. without additional programming. An account is not a node.

• • • Think of the content region as a big „node‟ block that allows other blocks in it but the node itself can‟t move. A block is a box containing some information A node resides only in the content area of the layout (except in special circumstances).• A Region is an area in a layout. content. footer. . left/right sidebar into which blocks can be placed and arranged. such as a header.

• • • .• Blocks are added by modules. Blocks can be moved around through the UI Blocks can be styled individually. widgets. menus. Blocks can contain views. and panels. nodes (in special circumstances).

• • • Views – an interface for making customized lists of the data contained in the drupal database. . Panels – an interface for making customized layouts of nodes available to the panels module. Widgets – a general term for interactive form elements or graphs that are enabled by modules.

2 Core Modules The most stable and widely-used version of blocks node theme This adjusts the site layout and style. These are building components in Drupal that may contain different types of web elements. 6. having a title and a body at the minimum. The primary form of content in a Drupal site. views . including the Drupal releases.Ver. An interface for making customized lists of the data contained in the drupal database. like „skinning‟ your media player. drupal. Contributed modules can be downloaded from this community site. These modules are shipped with Drupal. moved around the UI and styled individually.



5..3/890  0 8333 4:7 20/.3-00..30/390& < < ./:8990 890.4:9.90208 %0208.8 .07 %0208.

.3/&807#408 $8902!./.3/.943  !07288438.943 .439039209.9.8097.89380 W W W W W W W $90.7:5. .98 439039. 8 /.08831472.-.3/4/:0809938 &807 831472..943 4331472.9.

0841 .250.43903941.34/0809938 34/09508.9.5.0.W 34/0890572.-:05739147.7034/09508 9.7950 W W ./7:5.4390393.3/.0 .70..0/  5.:.3 -0 850..232:298.79.850.7147241.93389.-4/ .990.3/ 8947 1470..3/.3.1. 890 9.

//943..223 .34/0 %8825479.34/0 9.39 :8078349.3/..3.5747.< < < < 490.43428349.:.34/0 34398825479...8.94341.8/430974:90&  94:9.079337:5..391470.9 . 34/0 3.4:398349.3349-00.

439039 019.3.70./07  144907 .3.W #0438.4:9 8:..0..8.

.9.08 %34190.4390397043.8.7394.3 924.33842031472.4:9 0.:289.484907-4.3.9 .798/0-.- 34/0 -4.30/ -4.8.4190.439039.0593850.839-:99034/09801..0/...70..943 34/0708/0843390.7.- -05.-4.3/.0 W W W .439.

. W W W .8.439..0/..//0/-24/:08 4.8.W 4.3.3-024.3.:289..3/5.7./:.8.8.08 .308 4.08 /098 203:8 34/08 3850.3-0890/3/.74:3/974:90& 4.3..70.

.W W W '08 .:89420/ .3.9.9...01472.:89420/89841 90/.80 !.589.90721473907.-0/-24/:08 .308 ..439.9.30824/:0 /098 .9.-094905.3.-.0307..339071. /.4:984134/08.01472.01472 0020398477...7003.339071.30/390/7:5.

708550/97:5.42543039837:5. . 47 -4.3//0 :80/. %0572.'07   4704/:08 %0248989.:89420/8984190/.3 .9.3/890/3/.990.422:39890 3.3/890 0 8333  4:720/.808 %080.9.439. %08024/:08./:89890890.70-:/3.01472.08 .74:3/90&.9.3/.0784341 7:5.30/390/7:5.-.92..0/ .5.890 ..-0.3.4390393.7:5..8 34/0 9020 .990232:2 %8.3-0/434.3/11070399508410-0020398 24.4:9.700. 4397-:90/24/:08./:.80 /7:5./0/174298 .7147241.:/3907:5.439. /. .07 339071.-4/.

Sign up to vote on this title
UsefulNot useful