Drupal to the Next Level

in

Thanks to everyone who attended the presentation on taking Drupal to the next level.  This was a follow-up from my first session on Drupal in January 2008, where we built this site, www.foxvalleycp.com from scratch.  It was a basic 101 type session which focused on installation and the adminstrator interface.  Since we haven't done much with this site since then except some occasional posts, I thought it would be appropriate to build out some more functionality and share how that was done.

So read on for...

  • Drupal Building Blocks
  • Core Modules:  Node, Menu, Block, Taxonomy
  • Contributed Modules: CCK, Views, Panels
  • Bob's Favorite Modules
  • Hans's Favorite Modules

It's a pretty information filled post, I hope you at least take the time to skim it.

Drupal Overview - most of this was recast from the January session, Bob's Spectacular Drupal Flying Circus

Drupal Building Blocks - we introduced some of the core modules of Node, Menu, Blocks and taxonomy, as well as some key contributed modules such as CCK, Views and Panels.  I will attempt to summarize our discussion in the following "glossary"

  • Node - A node is a content "record" in the Drupal database and is presented in the content area when it's URL is accessed.  When you "create content" you are making a node.  A site can have an extensive number of content types (different kinds of content records) all of which can be granularly selected, themed, and controlled.  We spent some time touring everyone through the creation of a node.
  • Menu - Drupal allows for multiple menus to be created giving access to any URL.  Menus can be single or multiple levels, expanded or collapsed.  As we discussed menus we introduced "weight", an important concept used through the Drupal system, allowing you to control the "level" of an item.  Most weight designations are from -10 to 10, with lighter (less than) weights appearing before or above a heavier (greater-than) number
  • Blocks - Blocks in Drupal serve the purpose of containerizing site components.  Each menu or view you create also is identified as a block and you control where, when, and in what order blocks are displayed throughout your site.
  • Taxonomy - provides the means for categorizing/tagging your content in a wide variety of ways to allow for extremely focused selection of content.  This is an extremely powerful core module in the Drupal system.  Time spend learning all the ways taxonomy can be used in Drupal and planning your taxonomy categories will pay dividends down the road.
  • Modules - are the components of Drupal which can be turned on to provide additional site functionality.  When you install your base Drupal version you will see the Core modules.  These are the modules that are embedded in the system.  When you look at www.drupal.org/modules you see a list of all the hundreds of modules that have been contributed by the Drupal community, these are commonly referred to as Contributed Modules. Note: in order to maintain the integrity of your installation, it is strongly recommended that you install Contributed Modules (in  /sites/all/modules) in a different location than the Core Modules (/modules) in your file system.  You will note that as you install and activate Modules, there may be multiple module components available to be activated.
  • Permissions - As you enable additional Modules, additional permissions are also made available for module functions in Access Control.  Drupal provides a grid for granting permissions for various module functions by Role.  New Roles can be created and user accounts can be assigned to multiple Roles to provide granular access to site functions according to your design needs.
  • CCK - Content Construction Kit functions as a means for extending content types or creating new content types in Drupal.  CCK allows for you to build content forms for specific data.  For instance CCK was used on this site to build the "Questions" area in this site.
  • Views - provides the ability to create lists, tables, pages, and blocks of selected content and content type "fields" of nodes.  For instance, the block titled "Open Questions" on the right hand column is a view created to show content type: Questions, with an open status, sorted by Priority.
  • Panels - were not discussed but are an important way of structuring your page layout into sections which can include any combination of content, views, or blocks.

Whew! That was a lot to cover in just 40 minutes, but without the background I am sure some people would have been lost.  I based my presentation on the people I saw signup on the Fox Valley Computer Professionals Meetup site, but there were some others so I adjusted the 5-15 minutes I was going to brush on introducing Drupal for a more complete run-through. 

My apologies, I tied to embellish and add some more advanced discussion to hold everyone's interest, but I'm not sure how successful that was.

I will make another post shortly on the new features I built into the Fox Valley Computer Professionals site and some of the thinking I considered as we prepared for this presentation.  It always bugs me when I see posts and tutorials that demonstrate something, but don't tell how they did it, so I will wait until I have time to take you through it. [Future Link Here]

Bob's Favorite Modules

for administration...

for SEO...

others...

Drupal Links & Resources:

Please Comment

There's probably more Drupal presentations coming in the future, so please comment, tell us what you think and offer up what topics you might want us to cover.  Hans has offered to do an indepth on Drupal theming, and I am open for preparing whatever the group wants to see.

- Bob

Your rating: None Average: 5 (5 votes)

Comments

Great Presentation

Bob-

Great presentation and excellent follow-up post. Having worked with Joomla for the better part of a year now, it was nice to be able to compare some of the features of Drupal against Joomla.

I would love to see a follow-up Drupal presentation involving integrating CiviCRM into Drupal, or perhaps just a demo of CiviCRM in general. There seems to be a lot of potential there.