Your SlideShare is downloading. ×
Drupal: an Overview
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Drupal: an Overview


Published on

I provided an overview of Drupal for a U of Illinois lib school web design class last summer. Nothing flashy.

I provided an overview of Drupal for a U of Illinois lib school web design class last summer. Nothing flashy.

  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide
  • A CMS provides webmasters with tools for building sites. A CMF provides an advanced programming interface so developers can configure and customize their own tools
  • Transcript

    • 1. Drupal:anoverviewMatt WeaverWeb LibrarianWestlake Porter Public
    • 2. What is Drupal?• Content management system(CMS) / content management framework (CMF)• Open source• File structure written in PHP• Supports several databases:  MySQL, postgresql the most common• Prefers Apache (over Microsoft IIS)• Prefers Linux
    • 3. What is Drupal? • “Drupal is like a Lego kit. Skilled developers have already made the building blocks - in the form of contributed modules - that you need to create a site that suits your needs…”-- -started/before/overview
    • 4. Some Drupal terms• Nodes = “content types”  stories, pages, blog entries, custom• Comments – attached to nodes• Blogs – every user gets one• Blocks – containers for content• Users  Roles• Modules• Themes• Taxonomy
    • 5. Modules• PHP-written functions that are executed to do something:  Create a node  Display an image  Organize taxonomy terms  Set access restrictions  et cetera• Core and contributed
    • 6. Themes• The layout of the site• CSS• Template files: php  Custom templates for node types, front page, user login…• Core and contributed
    • 7. Nodes = content types• Default types:  Page – “policies”  Story – announcements• Custom:  Content Construction Kit (CCK)• Import modules• node_save method
    • 8. Drupal: the deets• Nearly 11,000 modules• Nearly 1,200 themes• Current supported versions are 6 & 7  Which should you choose?  Depends on our site’s needs: ▫ D7 is slick, but lots of modules haven’t been written for it yet.
    • 9. The Case for Drupal• Versatile: allows for customization• Extensible: “there’s a module for that”• Sometimes Wordpress is not enough• One Web Librarian can build a lot of functionality with those Lego blocks
    • 10. The Case for Drupal• For Libraries: Strong library community incl. library-related modules ▫ XC (extensible catalog) ▫ Sopac (integrates catalog to drupal website) ▫ Biblio (manage and display lists of scholarly publications ) ▫ MARC (imports MARC records to nodes) ▫ and others
    • 11. Obstacles• Learning curve can be steep, which can increase development time/costs• Nearly 11,000 modules and 1,200 themes ▫ Sometimes poorly maintained/abandoned ▫ Only as good as the developer who wrote them• Quality of support
    • 12. Obstacles• Getting more complex: ▫ Lines between data structures getting blurred/overridden/emended• Can be overkill for a small site ▫ Sometimes Wordpress is better
    • 13. The DrupalDevelopmentstack:The further down yougo, the more damageerrors can do to yoursite.
    • 14. Essential Modules• Content Construction Kit (CCK) ▫ Custom node type: eresource taxonomy Node Title Default node “body” Link fields Attached image/image field
    • 15. Essential Modules• Views module: framework for displaying database data from queries• User interface, not SQL commands• Simple to complex A table view of a custom content type
    • 16. Essential Modules:Panels • Panels: templates for pages/nodes • Override theme restrictions • Incorporate blocks, nodes, views • Can restrict access to specific panels
    • 17. A Panel DissectedCustom Rotatingcontent imagejust in this Slideshow(panel. Views)Tabbed Block: usedblock on other(quicktabs pagesmodule)thatdisplays Block ofviews Feed data (aggregatorAnother Module)QuicktabsblockNode content(page)
    • 18. Drupal at WPPL Main site and three subsites
    • 19. Drupal at WPPL
    • 20. Drupal at WPPL
    • 21. Drupal at WPPL
    • 22. Drupal at WPPLIntranetOnline forms w/ email notification: Online Incident Report Form (CCK): automatically emails form to director/assistant directors Online meeting signup Maintenance Request formSubsite for tech support staff: knowledge management system/repository
    • 23. Multisite• One instance of Drupal core• If one module is used in all sites (CCK, Views, Panels) install it once• Install distinct modules for subsite in that site directory only• Easier to maintain, lightweight• Lots of ways to do multisite• Some reconfiguring of Apache, other subsystems.
    • 24. XHTML & CSS• Themes ▫ Choosing/buying ▫ Rolling your own ▫ Theming hacks (views, node templates)• Node content ▫ Text editors offer some control, depending on the user.
    • 25. Other usesOpportunities to create cost savings by building functionality provided by vendors ▫ Room reservation ▫ Course reserves ▫ libguides
    • 26. Drupal Skills• Get your hands dirty• Foundation of XHTML & CSS will serve you very well• Database stuff ▫ Basic SQL commands ▫ Understanding the Drupal database ▫ Maintenance: module updates/upgrades ▫ Errors: Can destroy your site
    • 27. Drupal Skills <?php• PHP $path_pieces = explode(/, ▫ At least a little drupal_get_path_alias($_GET ▫ Use/hack existing [q]));?><p style="text-align: center;"><a scripts/snippets href="/movielists/? ▫ Develop your own q=taxonomy/term/<?php print $path_pieces[2]; ? theme >/moviecatexport" ▫ Theming Views onMouseOver="ImageOnly1.s ▫ Errors: Can break rc=/sites/www.westlakelibrary .org.movielists/modules/movie your site. cat/images/new_download_h over.png"… A real drupal snippet, trapped in the wild.
    • 28. Development guidelines • Never do development on a production server This setup is good Test site: Production server:(all development work from experimental to production quality)
    • 29. Development guidelines This setup is better Test site Production server(crash test dummy) Staging Server: Stores backup of production site: Minor tweaks
    • 30. How to play with Drupal• Xampp: preconfigured web server environment (free)  Apache  Mysql  PHP  Phpmyadmin (GUI for database)  For Mac, Linux and Windows• Plenty of tutorials for installing xampp•• A good tutorial on installing Drupal 6 on xampp: ▫
    • 31. To learn more
    • 32. To learn moreALA Library Technology Report: Using Drupal Great book on theming Drupal in Libraries Excellent General Text for Webmasters
    • 33. Get Help• Drupal4Lib – Listserv : essential  Friendly, knowledgeable, helpful participants  Responsive•• – incl. podcast••
    • 34. Get Help• ▫ Module/theme issues ▫ Forums• – can be local, regional; or can be topic-specific