SlideShare a Scribd company logo
Drupal Intro
What is Drupal?
• Open Source software written in php.
• A CMS or content-management system.
• A sophisticated web application building tool.
What is a CMS?
• Simply put, a CMS is a website you build using
the website itself.
• Wikipedia definition: A content management system (CMS)
such as a document management system (DMS) is a
computer application used to manage work flow needed to
collaboratively create, edit, review, index, search, publish and
archive various kinds of digital media and electronic text.
What can Drupal be?
• blog
• Forum
• Online newspaper, Portal / Directory
• Brocure site, portfolio, flickr like photo drop
• Social community site, job post board
• Video site like YouTube
• Project management site
• CRM, ERP, SCM, Wiki
• Shopping cart system
• E-learning, training site
• Dating site
• Anything you can think of…
Why use a CMS?
• It helps manage complexity.
• It provides a user interface (UI) for adding,
editing and publishing content.
• It provides a means for collaboration among
many to perform the above tasks.
Why use Drupal over Wordpress?
• Wordpress was designed only to be a blog with some easy add-ons.
• Drupal was designed to be more of a generalist: it’s for making ‘anything’ and is far
more robust.
• Wordpress could be the better choice for blogs since it is better at being a blog than
Drupal. This is something of debate.
• Wordpress is still a sound choice of CMS for SEO and security; so if wordpress satisfies
a simpler project’s requirements then by all means use it- it is easier and faster to set
up than Drupal.
• Wordpress is not designed to be highly scalable to many simultaneous users, nor does
it have flexible roles, permissions, extensible content types, nor does it have plentiful
well-tested, quality add-ons. It has a few and a lot of really poor plugins.
• 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.
Why use Drupal over Joomla? (or other CMS)
• It has superior session handling for a CMS.
• It has superior security.
• It is a more consistent, reliable and flexible framework for development.
• It is considered better for SEO from our research.
• It uses a ‘separation of concerns’ architecture to cleanly and consistently separate
structure, function, form, and presentation in layers (ie: php from data as db/xml,
layout and presentation as html and css).
• 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.
• Other CMS’es do a very very bad job of at least one of the above.
Downsides to the Druup
• Drupal has a steeper learning curve than
wordpress or Joomla.
• Drupal and it’s developers make no excuse for
this fact- it is a robust, flexible tool
• That said, the drupal community is constantly
addressing usability and user-experience issues
because they want the industry market share.
What is a UI?
• UI is a user-interface, which is a general term
for the layout of options, widgets and settings
used to configure the system or manage
content.
• ‘Site-building’ activities refer to configuring
settings or managing content through the UI,
such as building navigation menus.
Drupal Structure
• Drupal is a database-driven (‘dynamic’)
application. It requires a database.
• Drupal has a core filesystem whose
functionality can be extended using the UI
itself, modules and themes.
• The UI settings are stored in the database.
Modules
• 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.org
Themes
• Packages of files in a directory that you upload
into drupal’s theme space (/sites/all/themes)
• Themes adjust the site layout and style. Like
‘skinning’ your media player.
• Themes can be easily changed in the UI.
Drupal Database
Drupal’s database tracks things like :
• Site and Module settings,
• User’s information,
• Access information,
• Logging information,
• Permissions and User Roles,
• System Paths
• Content and content metadata
Nodes
• A node is the primary form of content in a
drupal site. At a minimum it is a title and a
body, and can be ‘specialized’.
• A ‘page’ and ‘story’ for example are node
types that have a specific node settings.
• A node type is a blueprint for creating
instances of content of a particular type.
Nodes (cont)
• Not everything in Drupal is a node.
• This is important!!
• Ex: A user is not a node. A taxonomy is not a
node. An account is not a node.
• Knowing this is important for evaluation of
what can and cannot be easily done through
the UI, without additional programming.
Layout and Regions
• A Region is an area in a layout, such as a header,
footer, content, left/right sidebar into which blocks can
be placed and arranged.
• A block is a box containing some information
• A node resides only in the content area of the layout
(except in special circumstances).
• Think of the content region as a big ‘node’ block that
allows other blocks in it but the node itself can’t move.
Blocks
• Blocks are added by modules.
• Blocks can contain views, widgets, menus,
nodes (in special circumstances), and panels.
• Blocks can be moved around through the UI
• Blocks can be styled individually.
Additional Terminology
• 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.
Admin Menu
• The administrative menu is a part of the UI
that allows one to configure Drupal’s settings.
• The settings available depend on which
modules are installed and enabled.
• Permissions allow users to have
‘administrative’ access to module settings.
Users
• All CMSes (wordpress, Joomla, Drupal) have a
user login system; users have a username/pw.
• Drupal also supports the concepts of 1) Roles
and 2) Permissions.
• Roles are user designations to groups having
the same set of permissions.
Anonymous User
• A (not-logged-in) site visitor is called a ‘guest’,
‘visitor’ or ‘anonymous user’.
• Has a user-id (uid) of 0 (zero).
• All anonymous users belong to the
‘anonymous user role’ (a role ID of 1) and
have a set of permissions assigned to them.
Authenticated User
• A user in drupal may belong to one or more
roles.
• Every registered user in Drupal belongs to at
least the ‘authenticated user’ role.
• Authenticated user role has a role ID of 2
Root ‘Admin’ User
• The ‘root’ user or ‘root admin’ has the ability
to do anything on the site and is a special
user.
• The ‘root’ user has a user-id (uid) of 1.
• The ‘root’ user does NOT have role-
permissions to set because they are
effectively gods within Drupal.
Managing Permissions
• KEY concept: if you grant permission to an
authenticated user, it applies to ALL roles
except the anonymous user.
• To grant a permission to everyone on a site,
you must grant the permission to both the
anonymous user and authenticated user.
Managing Permissions
• To grant permission to only a newly created
‘dentist role’, tick the permission on that role.
• Leave all the other roles deselected.
• If you grant to both the ‘dentist role’ AND the
‘authenticated user’ role, you would be doing
it wrong. Drupal assumes you know this.
Recipe: Change Site Information
• In Administer > Site Configuration > Site
Information:
• Change the information to suit your site
following the help text.
• Don’t change the ‘Default front page’ just yet.
• Click ‘Save configuration’
Recipe: Change Date and Time
• In Administer > Site Configuration > Date and
Time:
• Change the timezone to the correct time for
America/Denver (-0600 UTC)
• Change the time formats
• Click ‘Save Configuration’
Recipe: Clean Urls
Clean URLs remove the ?q= from the location
bar in your web browser.
• In Administer > Site Configuration > Clean
Urls:
• Tick ‘Enabled’
• Click ‘Save Configuration’
Clean Urls Issue
• If ‘Clean URLs’ is an unchangeable option,
then there is a misconfiguration of the drupal
site hosting environment.
• Contact your local IT support for assistance or
consult the drupal handbook for more info.
• For the purposes of this demo, it’s not
important but it -is- important to enable later.
Recipe: Add a user
• Go to Administer > User Management > Users
• Click ‘Add user’
• Choose options.
• Click ‘Create New Account’
Recipe: Add a user
• A user can also add themselves by registering, if
the root user has allowed this option.
• Go to Administer > User Management > User
Settings
• Tick ‘Visitors can create accounts and no
administrator approval is required’
• Click ‘Save Configuration’
Recipe: Add Roles
• You will note that ‘anonymous’ and
‘authenticated’ users are there by default,
undeletable.
• Type in the box below the roles in the ‘Name’
column. Click ‘add role’. That’s it.
Recipe: Edit / Delete role
• Click ‘edit’ next to the role name.
• Here you can change the name or delete the
role.
• Warning: If you click ‘delete role’, there is NO
confirmation. This can be bad.
Recipe: Assign multiple roles to User
• In Administer > User Management > Users:
• Click the ‘edit’ link under operations for a user
• Under Roles, Tick an additional role you
created.
• You will notice ‘authenticated user’ is locked.
• Scroll to the bottom and click ‘Save’
Recipe: Altering Permissions
• Under Administer > User Management > Permissions: you will see
there is a permissions column and role columns.
• Scroll down to the user module section.
• Tick ‘change own username’ in the ‘authenticated user’ column.
• Tick ‘Save Permissions’
Recipe: Build Menu
• Under Administer > Site Building > Menus:
• Click Primary Links
• On the Primary Links ‘List Items’ page, click ‘Add Item’
• In Path, type ‘contact’. In Menu link title, type ‘Contact Form’.
• Change weight to ‘50’ (drupal 6.x; ‘10’ in drupal 5.x)
• Click Save.
• You will notice that ‘Contact Form’ appears now on the far right of your
primary links. Click it to go to the contact form.
Recipe: Create About Page
• In the Navigation (left sidebar), click ‘Create Content’
• Click ‘Page’ under the content type listing.
• In the Title, type ‘About Us’. In the body type ‘This is my first drupal page’.
• Expand the ‘Menu settings’ fieldset.
• In the “Menu link title” type ‘About Us’.
• Change the weight to ‘49’.
• Expand the ‘URL path’ fieldset and type ‘about-us’
• Click ‘Save’
• You should now see the ‘About Us’ menu item in the Primary Link navigation. Click it to go to this
newly created node.
Recipe: Get modules
• Default Drupal installs can only do so much.
• Go to http://drupalmodules.com to find a module that
supports what you are trying to do.
• Do rely on the ratings here as they are tied to download /
popularity metrics from http://drupal.org
Recipe : Change Site (Admin) Email
• Note: There are multiple places to change the email address for a
site ‘root user’ administrator. You may have to dig around for
them in admin menu when logged in as the root user. Get login
info from Salesforce.
• In site information : admin/settings/site-information
• Site-wide contact form settings : admin/build/contact (edit
operation)
• Mass contact settings (if used) : admin/build/mass_contact/settings
• Mail settings (different places, ex uses mimemail) :
admin/settings/mimemail
• User register notify : admin/settings/register_notify
Recipe: Halp! The site is messed up
• If the login disappears and you can’t login, go to
www.yourdomain.com/user or
www.yourdomain.com/index.php?q=user
• If clean URLs is not working, substitute the first forward slash
(‘/’) after the domain/host with ‘/index.php?q=‘ without the
quotes.
• If all else fails, call Chris or Alex to build a GUI interface in
Visual Basic to track down the perpetrator in realtime.
Installing Modules
• Download (from drupal.or) and Unpack module ‘tarballs’
(*.tar.gz) files to the folder inside.
• Upload the module folder to <drupal_root>
/sites/all/modules.
• Create the ‘modules’ and ‘themes’ directories if they are
not there.
• Go to Administer > Site Building > Modules : and tick
‘Enabled’ next to the module to enable it and click ‘Save
Configuration’
Using Modules
• A newly enabled module will add an
administration menu.
• Go to that module and read the help before
changing anything.
• Play around and learn it’s feature set.
• Install the ‘Advanced Help’ module to get more
verbose help with modules.
Modules Used on Almost every Drupal Site
Most Useful Contributed Modules
Administration
menu
CCK Views String Overrides Backup and
Migrate
SEO Checklist SEO Compliance
Checker
Pathauto Path Redirect Global Redirect
Search404 Meta Tags Global GEOurl Html Purifier Page Title
Menu Attributes New XML Sitemap Site Map Taxonomy Manager Token
Auto Assign Role
(+patch)
Ubercart Date Mollum / Spam Captcha
WYSIWYG API FCKEditor IMCE Chaos Tools +
Delegator
Panels
Actions Triggers Notify Scheduler
Addthis / Diggthis/
Sharethis
Guestbook Simplenews GoogAnalytics
Most Useful Contributed Modules for SEO
SEO Checklist SEO Compliance
Checker
Path + Pathauto Path Redirect
Global Redirect
Search404 Meta Tags Global GEOurl Html Purifier
Page Title
Menu Attributes New XML Sitemap Site Map
Advanced: Open
Calais –RDF
metadata WS
Most Useful Contributed Modules (OLD)
Administration
menu
CCK Views String Overrides Backup and Migrate
SEO Checklist SEO Compliance
Checker
Pathauto Path Redirect Global Redirect
Search404 Meta Tags Global GEOurl Html Purifier Page Title
Menu Attributes New XML Sitemap Site Map Taxonomy Manager Token
Auto Assign Role
(+patch)
Ubercart Mollum / Spam Captcha
WYSIWYG API FCKEditor IMCE
Actions Triggers Notify Scheduler
Date Chaos Tools +
Delegator
Panels
Addthis / Diggthis/
Sharethis
Guestbook Simplenews GoogAnalytics
Advanced: Advanced: Apache
Solr Search (we
cannot support yet)
Advanced: Open
Calais –RDF metadata
WS
Advanced: Devel
(danger)
Advanced:
PHPmailer /
SMTP Auth
A warning about using Free and Low
Cost (downloaded) Themes
• They are more difficult to customize than starting from scratch, but faster to use.
• Some of the markup is not seo-friendly.
• Some of the markup is over-engineered and messy; less is more.
• Free or amateur / low-cost themes can be confusing if you look at the code; this may
impair your ability to learn drupal theming.
• Some of the markup may be in tables or liquid layout and this may be hard to change
for your particular project, even if it looks nice to you.
• Best practice suggests you either find a theme design and mimic its look-and-feel or do
the traditional photoshop mock up.
• If you take someone else’s theme, you don’t know what you’re going to get and this
can hinder your ability to develop
Getting free themes
• http://themegarden.org/drupal6/
• http://drupal.org/project/Themes
• http://themebot.com/free-website-templates/drupal-themes
• Google ‘drupal themes’ you’ll find a bunch of
stuff. Buyer beware.
Most Useful Themes
Zen
(use starter kit to subtheme)
960 grid based themes Garland
(use as admin theme)
Blarland… an evil copy of
garland. Place it in
sites/all/themes and
change the name of garland
to blarland in folder, and
file names esp in the info
file.

More Related Content

What's hot

Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs
Ahmad Mohamad Zain
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For Dummies
Koen Delvaux
 
72d5drupal
72d5drupal72d5drupal
72d5drupal
Mahesh Sherkar
 
Drupal website in 45 mins
Drupal website in 45 minsDrupal website in 45 mins
Drupal website in 45 mins
Rachit Gupta
 
Getting Started with Drupal
Getting Started with DrupalGetting Started with Drupal
Getting Started with Drupal
Rachel Vacek
 
10 Steps Not To Forget After Installing Drupal
10 Steps Not To Forget After Installing Drupal 10 Steps Not To Forget After Installing Drupal
10 Steps Not To Forget After Installing Drupal
Cory Gilliam
 
Presentation Drupal Content Management Framework
Presentation Drupal Content Management FrameworkPresentation Drupal Content Management Framework
Presentation Drupal Content Management Framework
Joshua Powell
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
David Burns
 
Drupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon BarcelonaDrupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon Barcelona
hernanibf
 
My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013
hernanibf
 
Drupal overview-training
Drupal overview-trainingDrupal overview-training
Drupal overview-training
Sam Davis
 
Drupal_cubet seminar
Drupal_cubet seminarDrupal_cubet seminar
Drupal_cubet seminar
Cubet Techno Labs
 
Drupal
DrupalDrupal
CalArts presentation
CalArts presentationCalArts presentation
CalArts presentation
Ashok Modi
 
Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)
Pure Sign
 
Preventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistPreventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type Checklist
Acquia
 
Webiny CMS Starter Guide
Webiny CMS Starter GuideWebiny CMS Starter Guide
Webiny CMS Starter Guide
Webiny
 
Building Rich Internet Applications with Ext JS
Building Rich Internet Applications  with Ext JSBuilding Rich Internet Applications  with Ext JS
Building Rich Internet Applications with Ext JS
Mats Bryntse
 
jQuery for Drupal
jQuery for DrupaljQuery for Drupal
jQuery for Drupal
jhamiltoorion
 
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon DublinCreating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
Suzanne Dergacheva
 

What's hot (20)

Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For Dummies
 
72d5drupal
72d5drupal72d5drupal
72d5drupal
 
Drupal website in 45 mins
Drupal website in 45 minsDrupal website in 45 mins
Drupal website in 45 mins
 
Getting Started with Drupal
Getting Started with DrupalGetting Started with Drupal
Getting Started with Drupal
 
10 Steps Not To Forget After Installing Drupal
10 Steps Not To Forget After Installing Drupal 10 Steps Not To Forget After Installing Drupal
10 Steps Not To Forget After Installing Drupal
 
Presentation Drupal Content Management Framework
Presentation Drupal Content Management FrameworkPresentation Drupal Content Management Framework
Presentation Drupal Content Management Framework
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
 
Drupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon BarcelonaDrupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon Barcelona
 
My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013
 
Drupal overview-training
Drupal overview-trainingDrupal overview-training
Drupal overview-training
 
Drupal_cubet seminar
Drupal_cubet seminarDrupal_cubet seminar
Drupal_cubet seminar
 
Drupal
DrupalDrupal
Drupal
 
CalArts presentation
CalArts presentationCalArts presentation
CalArts presentation
 
Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)
 
Preventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistPreventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type Checklist
 
Webiny CMS Starter Guide
Webiny CMS Starter GuideWebiny CMS Starter Guide
Webiny CMS Starter Guide
 
Building Rich Internet Applications with Ext JS
Building Rich Internet Applications  with Ext JSBuilding Rich Internet Applications  with Ext JS
Building Rich Internet Applications with Ext JS
 
jQuery for Drupal
jQuery for DrupaljQuery for Drupal
jQuery for Drupal
 
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon DublinCreating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
 

Viewers also liked

Introduction to Magento at Ecommerce North East
Introduction to Magento at Ecommerce North EastIntroduction to Magento at Ecommerce North East
Introduction to Magento at Ecommerce North East
Peacock Carter Ltd
 
(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Amazon Web Services
 
PHPBootCamp - Joomla! Framework
PHPBootCamp - Joomla! FrameworkPHPBootCamp - Joomla! Framework
PHPBootCamp - Joomla! Framework
Johan Janssens
 
Drupal Theming An Introduction
Drupal Theming   An IntroductionDrupal Theming   An Introduction
Drupal Theming An Introduction
Lauren Roth
 
Joomla! v 1.5 Core Features
Joomla! v 1.5 Core FeaturesJoomla! v 1.5 Core Features
Joomla! v 1.5 Core Features
AmyStephen
 
Joomla Presentations
Joomla PresentationsJoomla Presentations
Joomla Presentations
SiliconExpert Technologies
 
Joomla Day Chicago 2015 State of the Joomla! Union
Joomla Day Chicago 2015   State of the Joomla! UnionJoomla Day Chicago 2015   State of the Joomla! Union
Joomla Day Chicago 2015 State of the Joomla! Union
Rod Martin
 
Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015
Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015
Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015
Joshua Warren
 
Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)
AOE
 
Why Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher EducationWhy Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher Education
Acquia
 

Viewers also liked (10)

Introduction to Magento at Ecommerce North East
Introduction to Magento at Ecommerce North EastIntroduction to Magento at Ecommerce North East
Introduction to Magento at Ecommerce North East
 
(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
(WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
 
PHPBootCamp - Joomla! Framework
PHPBootCamp - Joomla! FrameworkPHPBootCamp - Joomla! Framework
PHPBootCamp - Joomla! Framework
 
Drupal Theming An Introduction
Drupal Theming   An IntroductionDrupal Theming   An Introduction
Drupal Theming An Introduction
 
Joomla! v 1.5 Core Features
Joomla! v 1.5 Core FeaturesJoomla! v 1.5 Core Features
Joomla! v 1.5 Core Features
 
Joomla Presentations
Joomla PresentationsJoomla Presentations
Joomla Presentations
 
Joomla Day Chicago 2015 State of the Joomla! Union
Joomla Day Chicago 2015   State of the Joomla! UnionJoomla Day Chicago 2015   State of the Joomla! Union
Joomla Day Chicago 2015 State of the Joomla! Union
 
Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015
Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015
Magento 2 - An Intro to a Modern PHP-Based System - Northeast PHP 2015
 
Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)
 
Why Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher EducationWhy Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher Education
 

Similar to Drupal intro-training-in-mumbai

An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
Compare Infobase Limited
 
Drupal introduction
Drupal introductionDrupal introduction
Drupal introduction
Jin Castor
 
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Anson Han
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to Drupal
Rod Martin
 
Necto 16 training 17 - administration
Necto 16 training 17 -  administrationNecto 16 training 17 -  administration
Necto 16 training 17 - administration
Panorama Software
 
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De Block
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De BlockDrupal 8 Basic Training - DrupalEurope 2018 - Maarten De Block
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De Block
Maarten De Block
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
Tom Deryckere
 
Intro to drupal
Intro to drupalIntro to drupal
Intro to drupal
hernanibf
 
BITM3730 11-7.pptx
BITM3730 11-7.pptxBITM3730 11-7.pptx
BITM3730 11-7.pptx
MattMarino13
 
Drupal - Introduction to User Management in Drupal
Drupal - Introduction to User Management in DrupalDrupal - Introduction to User Management in Drupal
Drupal - Introduction to User Management in Drupal
Vibrant Technologies & Computers
 
Drupal 6x Installation
Drupal 6x Installation Drupal 6x Installation
Drupal 6x Installation
Micky Metts
 
Top Drupal modules for beginners
Top Drupal modules for beginnersTop Drupal modules for beginners
Top Drupal modules for beginners
Marc Robinsone Caballero
 
Drupal Training Topics
Drupal Training TopicsDrupal Training Topics
Drupal Training Topics
vibrantuser
 
An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
Tobias Ratschiller
 
Drupal101
Drupal101Drupal101
Drupal101
Rachel Vacek
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
sdmaxey
 
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
camp_drupal_ua
 
Oracle Enterprise Manager Security: A Practitioners Guide
Oracle Enterprise Manager Security: A Practitioners GuideOracle Enterprise Manager Security: A Practitioners Guide
Oracle Enterprise Manager Security: A Practitioners Guide
Courtney Llamas
 
Liferay
LiferayLiferay
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
Acquia
 

Similar to Drupal intro-training-in-mumbai (20)

An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
 
Drupal introduction
Drupal introductionDrupal introduction
Drupal introduction
 
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to Drupal
 
Necto 16 training 17 - administration
Necto 16 training 17 -  administrationNecto 16 training 17 -  administration
Necto 16 training 17 - administration
 
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De Block
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De BlockDrupal 8 Basic Training - DrupalEurope 2018 - Maarten De Block
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De Block
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
Intro to drupal
Intro to drupalIntro to drupal
Intro to drupal
 
BITM3730 11-7.pptx
BITM3730 11-7.pptxBITM3730 11-7.pptx
BITM3730 11-7.pptx
 
Drupal - Introduction to User Management in Drupal
Drupal - Introduction to User Management in DrupalDrupal - Introduction to User Management in Drupal
Drupal - Introduction to User Management in Drupal
 
Drupal 6x Installation
Drupal 6x Installation Drupal 6x Installation
Drupal 6x Installation
 
Top Drupal modules for beginners
Top Drupal modules for beginnersTop Drupal modules for beginners
Top Drupal modules for beginners
 
Drupal Training Topics
Drupal Training TopicsDrupal Training Topics
Drupal Training Topics
 
An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
 
Drupal101
Drupal101Drupal101
Drupal101
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
 
Oracle Enterprise Manager Security: A Practitioners Guide
Oracle Enterprise Manager Security: A Practitioners GuideOracle Enterprise Manager Security: A Practitioners Guide
Oracle Enterprise Manager Security: A Practitioners Guide
 
Liferay
LiferayLiferay
Liferay
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
 

Recently uploaded

PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 

Recently uploaded (20)

PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 

Drupal intro-training-in-mumbai

  • 2.
  • 3. What is Drupal? • Open Source software written in php. • A CMS or content-management system. • A sophisticated web application building tool.
  • 4. What is a CMS? • Simply put, a CMS is a website you build using the website itself. • Wikipedia definition: A content management system (CMS) such as a document management system (DMS) is a computer application used to manage work flow needed to collaboratively create, edit, review, index, search, publish and archive various kinds of digital media and electronic text.
  • 5. What can Drupal be? • blog • Forum • Online newspaper, Portal / Directory • Brocure site, portfolio, flickr like photo drop • Social community site, job post board • Video site like YouTube • Project management site • CRM, ERP, SCM, Wiki • Shopping cart system • E-learning, training site • Dating site • Anything you can think of…
  • 6. Why use a CMS? • It helps manage complexity. • It provides a user interface (UI) for adding, editing and publishing content. • It provides a means for collaboration among many to perform the above tasks.
  • 7. Why use Drupal over Wordpress? • Wordpress was designed only to be a blog with some easy add-ons. • Drupal was designed to be more of a generalist: it’s for making ‘anything’ and is far more robust. • Wordpress could be the better choice for blogs since it is better at being a blog than Drupal. This is something of debate. • Wordpress is still a sound choice of CMS for SEO and security; so if wordpress satisfies a simpler project’s requirements then by all means use it- it is easier and faster to set up than Drupal. • Wordpress is not designed to be highly scalable to many simultaneous users, nor does it have flexible roles, permissions, extensible content types, nor does it have plentiful well-tested, quality add-ons. It has a few and a lot of really poor plugins. • 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.
  • 8. Why use Drupal over Joomla? (or other CMS) • It has superior session handling for a CMS. • It has superior security. • It is a more consistent, reliable and flexible framework for development. • It is considered better for SEO from our research. • It uses a ‘separation of concerns’ architecture to cleanly and consistently separate structure, function, form, and presentation in layers (ie: php from data as db/xml, layout and presentation as html and css). • 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. • Other CMS’es do a very very bad job of at least one of the above.
  • 9. Downsides to the Druup • Drupal has a steeper learning curve than wordpress or Joomla. • Drupal and it’s developers make no excuse for this fact- it is a robust, flexible tool • That said, the drupal community is constantly addressing usability and user-experience issues because they want the industry market share.
  • 10. What is a UI? • UI is a user-interface, which is a general term for the layout of options, widgets and settings used to configure the system or manage content. • ‘Site-building’ activities refer to configuring settings or managing content through the UI, such as building navigation menus.
  • 11. Drupal Structure • Drupal is a database-driven (‘dynamic’) application. It requires a database. • Drupal has a core filesystem whose functionality can be extended using the UI itself, modules and themes. • The UI settings are stored in the database.
  • 12. Modules • 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.org
  • 13. Themes • Packages of files in a directory that you upload into drupal’s theme space (/sites/all/themes) • Themes adjust the site layout and style. Like ‘skinning’ your media player. • Themes can be easily changed in the UI.
  • 14. Drupal Database Drupal’s database tracks things like : • Site and Module settings, • User’s information, • Access information, • Logging information, • Permissions and User Roles, • System Paths • Content and content metadata
  • 15. Nodes • A node is the primary form of content in a drupal site. At a minimum it is a title and a body, and can be ‘specialized’. • A ‘page’ and ‘story’ for example are node types that have a specific node settings. • A node type is a blueprint for creating instances of content of a particular type.
  • 16. Nodes (cont) • Not everything in Drupal is a node. • This is important!! • Ex: A user is not a node. A taxonomy is not a node. An account is not a node. • Knowing this is important for evaluation of what can and cannot be easily done through the UI, without additional programming.
  • 17. Layout and Regions • A Region is an area in a layout, such as a header, footer, content, left/right sidebar into which blocks can be placed and arranged. • A block is a box containing some information • A node resides only in the content area of the layout (except in special circumstances). • Think of the content region as a big ‘node’ block that allows other blocks in it but the node itself can’t move.
  • 18. Blocks • Blocks are added by modules. • Blocks can contain views, widgets, menus, nodes (in special circumstances), and panels. • Blocks can be moved around through the UI • Blocks can be styled individually.
  • 19. Additional Terminology • 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.
  • 20. Admin Menu • The administrative menu is a part of the UI that allows one to configure Drupal’s settings. • The settings available depend on which modules are installed and enabled. • Permissions allow users to have ‘administrative’ access to module settings.
  • 21. Users • All CMSes (wordpress, Joomla, Drupal) have a user login system; users have a username/pw. • Drupal also supports the concepts of 1) Roles and 2) Permissions. • Roles are user designations to groups having the same set of permissions.
  • 22. Anonymous User • A (not-logged-in) site visitor is called a ‘guest’, ‘visitor’ or ‘anonymous user’. • Has a user-id (uid) of 0 (zero). • All anonymous users belong to the ‘anonymous user role’ (a role ID of 1) and have a set of permissions assigned to them.
  • 23. Authenticated User • A user in drupal may belong to one or more roles. • Every registered user in Drupal belongs to at least the ‘authenticated user’ role. • Authenticated user role has a role ID of 2
  • 24. Root ‘Admin’ User • The ‘root’ user or ‘root admin’ has the ability to do anything on the site and is a special user. • The ‘root’ user has a user-id (uid) of 1. • The ‘root’ user does NOT have role- permissions to set because they are effectively gods within Drupal.
  • 25. Managing Permissions • KEY concept: if you grant permission to an authenticated user, it applies to ALL roles except the anonymous user. • To grant a permission to everyone on a site, you must grant the permission to both the anonymous user and authenticated user.
  • 26. Managing Permissions • To grant permission to only a newly created ‘dentist role’, tick the permission on that role. • Leave all the other roles deselected. • If you grant to both the ‘dentist role’ AND the ‘authenticated user’ role, you would be doing it wrong. Drupal assumes you know this.
  • 27. Recipe: Change Site Information • In Administer > Site Configuration > Site Information: • Change the information to suit your site following the help text. • Don’t change the ‘Default front page’ just yet. • Click ‘Save configuration’
  • 28. Recipe: Change Date and Time • In Administer > Site Configuration > Date and Time: • Change the timezone to the correct time for America/Denver (-0600 UTC) • Change the time formats • Click ‘Save Configuration’
  • 29. Recipe: Clean Urls Clean URLs remove the ?q= from the location bar in your web browser. • In Administer > Site Configuration > Clean Urls: • Tick ‘Enabled’ • Click ‘Save Configuration’
  • 30. Clean Urls Issue • If ‘Clean URLs’ is an unchangeable option, then there is a misconfiguration of the drupal site hosting environment. • Contact your local IT support for assistance or consult the drupal handbook for more info. • For the purposes of this demo, it’s not important but it -is- important to enable later.
  • 31. Recipe: Add a user • Go to Administer > User Management > Users • Click ‘Add user’ • Choose options. • Click ‘Create New Account’
  • 32. Recipe: Add a user • A user can also add themselves by registering, if the root user has allowed this option. • Go to Administer > User Management > User Settings • Tick ‘Visitors can create accounts and no administrator approval is required’ • Click ‘Save Configuration’
  • 33. Recipe: Add Roles • You will note that ‘anonymous’ and ‘authenticated’ users are there by default, undeletable. • Type in the box below the roles in the ‘Name’ column. Click ‘add role’. That’s it.
  • 34. Recipe: Edit / Delete role • Click ‘edit’ next to the role name. • Here you can change the name or delete the role. • Warning: If you click ‘delete role’, there is NO confirmation. This can be bad.
  • 35. Recipe: Assign multiple roles to User • In Administer > User Management > Users: • Click the ‘edit’ link under operations for a user • Under Roles, Tick an additional role you created. • You will notice ‘authenticated user’ is locked. • Scroll to the bottom and click ‘Save’
  • 36. Recipe: Altering Permissions • Under Administer > User Management > Permissions: you will see there is a permissions column and role columns. • Scroll down to the user module section. • Tick ‘change own username’ in the ‘authenticated user’ column. • Tick ‘Save Permissions’
  • 37. Recipe: Build Menu • Under Administer > Site Building > Menus: • Click Primary Links • On the Primary Links ‘List Items’ page, click ‘Add Item’ • In Path, type ‘contact’. In Menu link title, type ‘Contact Form’. • Change weight to ‘50’ (drupal 6.x; ‘10’ in drupal 5.x) • Click Save. • You will notice that ‘Contact Form’ appears now on the far right of your primary links. Click it to go to the contact form.
  • 38. Recipe: Create About Page • In the Navigation (left sidebar), click ‘Create Content’ • Click ‘Page’ under the content type listing. • In the Title, type ‘About Us’. In the body type ‘This is my first drupal page’. • Expand the ‘Menu settings’ fieldset. • In the “Menu link title” type ‘About Us’. • Change the weight to ‘49’. • Expand the ‘URL path’ fieldset and type ‘about-us’ • Click ‘Save’ • You should now see the ‘About Us’ menu item in the Primary Link navigation. Click it to go to this newly created node.
  • 39. Recipe: Get modules • Default Drupal installs can only do so much. • Go to http://drupalmodules.com to find a module that supports what you are trying to do. • Do rely on the ratings here as they are tied to download / popularity metrics from http://drupal.org
  • 40. Recipe : Change Site (Admin) Email • Note: There are multiple places to change the email address for a site ‘root user’ administrator. You may have to dig around for them in admin menu when logged in as the root user. Get login info from Salesforce. • In site information : admin/settings/site-information • Site-wide contact form settings : admin/build/contact (edit operation) • Mass contact settings (if used) : admin/build/mass_contact/settings • Mail settings (different places, ex uses mimemail) : admin/settings/mimemail • User register notify : admin/settings/register_notify
  • 41. Recipe: Halp! The site is messed up • If the login disappears and you can’t login, go to www.yourdomain.com/user or www.yourdomain.com/index.php?q=user • If clean URLs is not working, substitute the first forward slash (‘/’) after the domain/host with ‘/index.php?q=‘ without the quotes. • If all else fails, call Chris or Alex to build a GUI interface in Visual Basic to track down the perpetrator in realtime.
  • 42. Installing Modules • Download (from drupal.or) and Unpack module ‘tarballs’ (*.tar.gz) files to the folder inside. • Upload the module folder to <drupal_root> /sites/all/modules. • Create the ‘modules’ and ‘themes’ directories if they are not there. • Go to Administer > Site Building > Modules : and tick ‘Enabled’ next to the module to enable it and click ‘Save Configuration’
  • 43. Using Modules • A newly enabled module will add an administration menu. • Go to that module and read the help before changing anything. • Play around and learn it’s feature set. • Install the ‘Advanced Help’ module to get more verbose help with modules.
  • 44. Modules Used on Almost every Drupal Site
  • 45. Most Useful Contributed Modules Administration menu CCK Views String Overrides Backup and Migrate SEO Checklist SEO Compliance Checker Pathauto Path Redirect Global Redirect Search404 Meta Tags Global GEOurl Html Purifier Page Title Menu Attributes New XML Sitemap Site Map Taxonomy Manager Token Auto Assign Role (+patch) Ubercart Date Mollum / Spam Captcha WYSIWYG API FCKEditor IMCE Chaos Tools + Delegator Panels Actions Triggers Notify Scheduler Addthis / Diggthis/ Sharethis Guestbook Simplenews GoogAnalytics
  • 46. Most Useful Contributed Modules for SEO SEO Checklist SEO Compliance Checker Path + Pathauto Path Redirect Global Redirect Search404 Meta Tags Global GEOurl Html Purifier Page Title Menu Attributes New XML Sitemap Site Map Advanced: Open Calais –RDF metadata WS
  • 47. Most Useful Contributed Modules (OLD) Administration menu CCK Views String Overrides Backup and Migrate SEO Checklist SEO Compliance Checker Pathauto Path Redirect Global Redirect Search404 Meta Tags Global GEOurl Html Purifier Page Title Menu Attributes New XML Sitemap Site Map Taxonomy Manager Token Auto Assign Role (+patch) Ubercart Mollum / Spam Captcha WYSIWYG API FCKEditor IMCE Actions Triggers Notify Scheduler Date Chaos Tools + Delegator Panels Addthis / Diggthis/ Sharethis Guestbook Simplenews GoogAnalytics Advanced: Advanced: Apache Solr Search (we cannot support yet) Advanced: Open Calais –RDF metadata WS Advanced: Devel (danger) Advanced: PHPmailer / SMTP Auth
  • 48. A warning about using Free and Low Cost (downloaded) Themes • They are more difficult to customize than starting from scratch, but faster to use. • Some of the markup is not seo-friendly. • Some of the markup is over-engineered and messy; less is more. • Free or amateur / low-cost themes can be confusing if you look at the code; this may impair your ability to learn drupal theming. • Some of the markup may be in tables or liquid layout and this may be hard to change for your particular project, even if it looks nice to you. • Best practice suggests you either find a theme design and mimic its look-and-feel or do the traditional photoshop mock up. • If you take someone else’s theme, you don’t know what you’re going to get and this can hinder your ability to develop
  • 49. Getting free themes • http://themegarden.org/drupal6/ • http://drupal.org/project/Themes • http://themebot.com/free-website-templates/drupal-themes • Google ‘drupal themes’ you’ll find a bunch of stuff. Buyer beware.
  • 50. Most Useful Themes Zen (use starter kit to subtheme) 960 grid based themes Garland (use as admin theme) Blarland… an evil copy of garland. Place it in sites/all/themes and change the name of garland to blarland in folder, and file names esp in the info file.