June 2, 2009

Drupal Module of the Week

Our first installment of "Drupal Module of the Week". A weekly post about a new module that we like around the office, currently using in a project, or some that we're even incorporating into our Fuse Drupal Base Install.

So right off the bat, we're going to cheat just to get up to speed and cover all the obvious basics. These are the ones that we blindly download for every new Drupal install. Most of us black out and let our auto-pilot click in. The next installment will be a lot more in depth.

  1. CCK - The Content Creation Kit allows you to create and add custom fields to nodes. On a fresh install of Drupal, you get a few content types and you can create a few more, but they're all stuck with only having a title and a body. With CCK you can add any number of fields, with any type of content within them. Turn on the filefield and you can upload pdf's, grab the imagefield and your content type can handle images like a pro. Numbers, maps, audio files, etc... On top of all that, it integrates so awesomely with our next favourite module. CCK is working it's way into Drupal core for version 7, but for now it's one of our favourite contrib modules.
  2. Views - Views gives you almost SQL level control over your data. If you want to combine a couple different content types, remove a few fields, display the number of comments and only show 6 results with a pager, you can do it with Views.
  3. Token - Token is basically a dynamic search and replace for data on your site. You can use it with a ton of modules to mark a placeholder and have the token replaced with a title, username, node id, etc... Pathauto takes advantage of the token API quite extensively.
  4. Pathauto - Pathauto helps us out with our clean urls. On sites that publish a lot of content, pathauto takes the title, strips out penny words and non-alphanumeric characters and replaces spaces with dashes to give you a nice looking SERF. There are a bunch of options included as well that allow for even more flexibility and customisation including different rewrite rules depending on content type and taxonomy term used.
  5. Administration Menu - Once you start theming up a storm and remove that side menu that used to give you such quick access to the admin section, you'll end up having to type in /admin an awful lot. Which can make you feel like you're a little more badass, but it does get tedious. Enter Administration menu. Really nice, simple, and gives you quick access to everything you need. It can also be stripped down with permissions to give a nice content creation menu for your site without impacting your site design at all.
  6. Devel - Devel is a handy module when you're developing a custom module or when you're developing a custom theme. It's a sort of Firebug and debugger all in one for Drupal. One of the handiest features is it's ability to "walk up" the theme stack to find out exactly what template file is controlling the output of any dynamic data on the screen. Also, stop using print_r and var_dump. Use dpr() for print_r() and dvr() for var_dump().