Drupal Workshop Introduction to Drupal Part 1: Web Content Management, Advantages/Disadvantages of Drupal, Drupal terminology, Drupal technology, directories
Disclaimer and Copyright This presentation was created by Jennifer Hodgdon of Poplar ProductivityWare LLC. This presentation is placed in the public domain. You are therefore granted permission to use and modify this presentation as you wish. However, an attribution to the source is always appreciated. Information contained here is believed to be accurate, but is presented with no warranty as to its accuracy. Use at your own risk.
What does using a Content Management System (CMS) buy you? Content and settings stored in a database: edit content, menus, navigation, etc. on the web Web pages are generated by scripts from information in the database, not stored as individual files Enter information once, display in different ways on different pages (lists, grids, calendars, ) Content is separate from style/presentation, so style is consistent across site Permissions system: different users have permission to do different actions on the site
What are your options? Many Content Management Systems (CMS) are available: Drupal Joomla WordPress Expression Engine WebGUI Plone
Disadvantages of Drupal Flexibility = Complexity May not be the best alternative for simple or single- functionality sites Takes some time to learn Takes some time to set up Free and Open Source = No guarantees Free support options may or may not be responsive (but you can pay for support) Features you need may or may not be available Your feature requests and bug reports may or may not be acted upon
What types of sites is Drupal good for? Examples: http://www.pdx.edu/ Showcase: University web site. http://www.symantec.com/connect/ Interaction and Community: Visitors can submit and answer questions http://www.symantec.com/connect/ See http://drupal.org/cases for more
Technology of Drupal Drupal runs on a LAMP platform: L = Linux operating system(but it can also run on Windows, Mac) A = Apache web server (but it can also run on other web servers; not so well on Microsoft IIS as on Apache) M = MySQL database (but it can also run on PostgreSQL, SQLite, and others) P = PHP scripting language (no choices there!)
Drupal Terminology Module Def: Add-on code that adds functionality to Drupal Can be core (comes with Drupal), contributed (download and install separately), or custom (written specifically for your site) Examples: Forum, Blog, Web Form Theme Def: Set of PHP files, CSS files, and images that defines the layout and styles for your site Can be core, contributed, or custom Path Def: Part of the URL of your site that follows the base URL for your site. For example, in http://example.com/node/add, the path is node/add
Drupal Terminology p. 2 User Def: Anyone who visits your site Non-logged-in visitors are known as anonymous Users with accounts are assigned to roles that you can define, such as Master Admin, Content Editor, Member Permissions are generally assigned by role Content Item (called Node prior to Drupal 7) Def: A piece of content on your site, which could be displayed on its own page or as part of another page (or both) Basic content items have a Title, Body, a unique ID number, and some meta-data (creation time, last updated, author, etc.) Each item also has a content type, such as Page, Article, Press release, Event, or Member profile. Content types can have additional custom fields besides Title and Body, such as location, event date, banner image, etc.
Drupal Terminology p. 3 Taxonomy Def: Categories, tags, or other classifications that can be applied to content on your site Menu Def: List of links to pages on your site, generally used for navigation in headers, sidebars, footers Weight Def: Number that defines the order of a list, such as of menu items. Larger numbers sink to the bottom of the list. Block Def: Text, links, images, etc. that can be placed in a region of your sites theme (header, sidebar, footer, etc.), and configured to display on one or more pages
Drupals Directory Structure Drupals core areas (DO NOT MODIFY!): (files such as index.php,.htaccess, install.php, update.php) (you might need to modify.htaccess only) includes misc modules profiles scripts themes Contributed and custom modules, themes, and libraries to be shared by all sites hosted here: sites/all modules themes libraries Subdirectories defining the individual web sites hosted here: sites/(other subdirectories) settings.php (file) modules (directory) themes (directory)