Modules

ImageAPI

Published April 10, 2009
A powerful behind-the-scenes tool that other image-related modules utilize.

The ImageAPI module provides important behind-the-scenes image processing capabilities that are utilized by other image modules, especially ImageCache and ImageField.

"API" is an abbreviation for "Application Programming Interface" - a set of functions that other modules can take advantage of in an effort to reduce code duplication and to provide a standard way to deal with images in Drupal.

Stats

  • Learning curve: not-applicable - since there is no user interface for this module, just install it and it makes itself available for other modules to use.
  • Depth: deep - an important module, most of it will become part of core in Drupal 7.
  • Resources:

Pay no attention to that (module) behind the curtain.

If you're going to be using images in your content types, then most likely you'll need this module. I'm not talking about "need" in the wow-I-really-need-to-sing-a-dozen-songs-during-my-journey way, but in the wow-I-really-need-to-kill-the-Wicked-Witch-before-she-does-away-with-me-and-my-little-dog way. It is a requirement to complete the odyssey.

ImageField

Published April 3, 2009
If you need to add images to your content, then you probably want to be using ImageField.

This module's dependence of the FileField module means that it inherits all of FileField's capabilities, including the ability to limit uploaded files by type and size. In addition, ImageField also allows site admins to limit uploaded images by resolution.

ImageField also provides an option for the content creator to add both a title and "alt" text entry for every uploaded image.

Unlike the Image module, images uploaded via ImageField do not become Drupal nodes on their own.

Stats

O images, images - wherefore art thou image handling?

Not in the default install of Drupal core, that's for sure.

Along with a the lack of a native WYSIWYG editor, proper image handling support is one of the major complaints against Drupal (did I mention the steep learning curve?) Luckily, there's a robust and very (very) busy community of developers who spend an inordinate (and possibly unhealthy) amount of time writing excellent modules for Drupal - one of these is called ImageField.

ImageCache

Published April 2, 2009
Automatically performs image manipulations as needed and caches the results. Complete integration with CCK (via ImageField) and Views.

If you're using ImageField with CCK, then you should be using this module.

You can define an unlimited number of preset image manipulations that can be called upon when displaying images. These "manipulations are usually just different sizes, but the module also give you the option to crop, rotate, desaturate, and sharpen.

What's with the "Cache" in ImageCache? It actually only creates a modified image when that image is needed. Once a modified image is created, it is cached and treated just like any other image on the server. The next time that particular image modification is called, it served from the cache - no additional image processing necessary.

ImageCache also integrates fully with Views to allow you to select how an image appears in a view.

Stats

What makes an Aston Martin Vanquish such a cool car?

Is it the fact that James don't-call-me-Remington-Steele Bond drove one all over a frozen lake (and into an ice hotel) in Die Another Day? Is it because Jason I-can-take-James-Bond-with-one-hand-tied-behind-my-back Statham's character in The Italian Job used his share of the heist to purchase one? Or is it because it's just one super-fast, totally cool-looking ride?

Filefield

Published March 27, 2009
Provides a file upload CCK fieldtype with powerful features that go above and beyond Drupal's core upload capabilities.

This module is a CCK add-on that allows your content administrators to easily attach files to various content types. Its configuration allows you to dictate where each file gets stored on a per-user basis. It is required for many image-related CCK add-ons.

It provides many additional features above and beyond Drupal's core upload capabilities, including configurable per-user or per-field upload paths, configurable per-field size limits, and configuable per-field filetypes. It also has an API that allows module developers to leverage into its functionality.

The FileField module is required when using ImageField, a popular and extremely powerful way to add images to nodes.

Stats

SETTING: A television studio stage, complete with a fake kitchen set and a couple of generic PCs on the counter. Phil, a haggard-looking developer seems exasperated as he works at one of the PCs. Billy enters from the left to a modest round of applause from the studio audience.

BILLY: Hey Phil, what's got you down?

PHIL: Oh, hey Billy, I didn't see you come in. It's this darn core upload module, it's just not doing enough!

BILLY: (winking to the audience) Hmmm, tell me what you're trying to accomplish.

Link

Published March 27, 2009
Provides a CCK field type for adding links to content types. Supports titles, targets, and URL display trimming.

The module allows the site administrator to specify how the link is output (with or without a title), its behavior when clicked, and the option for the "rel=nofollow" link attribute.

Stats

Clean water. Fresh air. Our health. The Link module. Free speech. You mother. All things we take for granted until they're taken away from us.

The Link module isn't like its big, important parent, CCK, or its hey-look-at-me-I'm-included-with-core-CCK siblings Text and Number or its hoity-toity cousins Node and User Reference. No, Link module is out in the ginormous sea of Drupal modules, fending for itself, and doing a pretty darn good job at it.

Admin Menu

Published March 27, 2009
Adds a dyanmic administrative navigation bar to the top of every page for quick access to virtually any admin page.

The Admin Menu module uses javascript and css to create a dynamic administrative menu bar at the top of every page on your site. You can decide which users can utilize the menu bar via the module's permissions. In addition to providing virtually all of the administrative links, it also has handy links for running cron, clearing caches, disabling developer modules, drupal.org, and accessing the "my account" page.

Stats

What is more fun? Drilling down into your site's administrative area page-by-page or sticking needles in your eyes? Wait - don't answer yet; I'll give you a third option - how about memorizing Drupal's admin area URLs in an effort to avoid the dreaded page refresh? (all those guilty of the third option raise your hands - me included)

Views

Published March 27, 2009
You have all this content, you need to list it, sort it, filter it, form relationships, make it look pretty. We consider Views a must-have!

Views is a universal API to let any user or module make a list of just about anything on your Drupal site: views comes with the ability to list all of Drupal's "first class objects":

Nodes
most views list nodes, and nodes have the most power and felxibility in a Drupal site
Aggregator Items
list stories in an RSS feed, sort them, filter them
Comments
maybe list all comments in moderation, or comments from users with the Editor role
Files
think: all files by one user, all MP3 files
Node revisions
Peek into the history of your content
Taxonomy Terms
Create custom navigation fast
Users
Combined with something like Userpoints, a list of folks who are active on your site
Access Log entries
find out where users are hitting your site, how they got there, and when

Stats

So, you want to build a content management system? They're all the same, aren't they? Admin screens, RSS feeds, Calendar, Contact form, the list goes on...

On the other hand, that makes me think of one area no framework agrees on... Lists! Drupal doesn't even have a built-in way of displaying a list of all nodes of type "X" to users.