Curious as to what Drupal modules we're using?
Here is a list of the Drupal modules we have installed in various sites and that we find useful. We recently updated this to reflect Drupal 5.x installations.
- accents - prevents errors in DB migration by removing non-alpha numeric characters.
- admin menu - provides an excellent drop-down admin menu where admins can easily access all site functions.
- adsense - easy handling of AdSense code, including search boxes.
- backup migrate - allows you to create a lightweight, compressed backup (without unnecessary content such as cache and watchdog info) on the fly.
- captcha - user enters image code to register or post content on your site.
- cck - content creation kit - replaces flexinode - allows for custom node types.
- codefilter - for posting code literally (escapes code characters (example
<?php php code here ?>
- contemplate - allows for custom theming of node types - we use this to create CCK teasers without hacks.
- cronplus - allows for scheduling of cron events on a specified interval (hourly, weekly, monthly, etc.)
- customerror - custom 404 pages (go to contractwebdevelopment.com/blabla for an example)
- dba - setup regularly scheduled automated, compressed, lightweight database backups to a secure directory above the public root of your website server.
- default filter - an essential module that should be included in core. It lets you specify default input formats for each user role.
- read more tweak - "ed_readmore" - this module allows you to place "read more..." links right after the content teaser, as opposed to below and in a separate box.
- event - simple event management, includes calendar.
- excerpt - separate teaser on each node.
- ext link - "external link" - this will automatically open any external links in a new window, and, optionally, mark the link with a little external graphic.
- fck editor - the preferred WYSIWYG editor - combined with IMCE for file and image handling this provides an excellent, controlled interface for your users.
- find path - helps you quickly and easily locate URL aliases by name or path.
- fivestar - lets users vote on your content.
- forward - "email this page" link for emailing pages to friends.
- google_pr - calculate Google PageRank of pages.
- imce - file and image handling system that provides superior functionality to FCKEditor and TinyMCE's built in file handling systems. For one, it allows uploading, resizing and handling of images all within one window.
- insert_view - insert content lists from "views" module into nodes using simple tags
- jquery_update - if you're using lightbox, you'll need to use this to update your jquery installation.
- jstools - javascript tools - provides some nifty javascsript tools.
- lightbox2 - provides a great effect for viewing images.
- login toboggan - provides a great user registration handling system, along with customization of user messages, sign-up pages, etc. - integrates with the core profile module.
- multiping - preferred over the core ping module - uses a centralized, regularly updated server to manage pings.
- nice menus - excellent CSS-based, SEF (Search Engine Friendly) drop-down functionality for your menus. You can place the menus in the left or right sidebars (expanding out horizontally), or, as we have them - below the header (expanding down vertically).
- node_clone - easy duplication of node for new content creation (be careful - if you clone a node and then forget to edit it, you may be penalized for duplicate content by search engines).
- nodewords - meta tag authoring - keyword and description tags. The keyword tag is only necessary for older search engines, which are greatly in the minority. But the description tag is useful - as it provides the description (teaser) for your page in the SERPs (Search Engine Results Pages).
- pathauto - auto generation of aliases for content types based on predefined user selected variables.
- poormanscron - runs cron jobs without having cron installed.
- print - link to "print friendly" version of page on nodes.
- privatemsg - Instant Messenger among site users
- profile_pages - user lists according to profiles (ie. users with blogs)
- search_config - more search parameters
- service_links - syndication/ bookmarking services (del.icio.us, technorati, Google, Yahoo, etc.)
- similar - this is what we use to show our "related articles" block. It finds similar content based on title or taxonomy and displays a specified number of links to that content in a sidebar block or at the bottom of your main content.
- simplenews - a simple newsletter service.
- site menu - provides an excellent sitemap for your users - we link to our sitemap in our footer as well as in the "categories" menu above. Note that we generated an alias to change /sitemenu to /sitemap and added the corresponding .htaccess redirect.
- smileys - converts
: ) : ( etc. into

- subscriptions - users can subscribe to content they find valuable and would like to track - for example, threads they have commented on. They can also subscribe based on node type, or only to comments.
- taxonomy batch operations - great for adding multiple taxonomy terms to a category at once.
- taxonomy defaults - great for having certain content types default to a particular taxonomy or taxonomies.
- taxonomy_hide - hide taxonomies you don't want displayed.
- taxonomy node operations - lets you quickly assign categories to nodes in the "list content" view.
- token - required by the pathauto module
- textimage - adds image support to captcha module
- urllist - createst list of urls at /urllist.txt for submission to Yahoo Search
- views - enables various views of nodes (lists of popular content for example - you define your own)
- view_bonus - additional preconfigured views.
- voting_actions - set up actions to occur based on voting criteria.
- votingapi - voting API can be used by various modules to configure voting-based events.
- web form - generate secure, easy to use webforms for your visitors and users. You can view the form results on your website (they are stored in the database) or have them emailed to you.
- xml sitemap - generates dynamic sitemaps to keep search engines (such as Google) informed of site updates and changes.
great articles, do you have any related articles
I'd love to learn how to customize node types, but I'm having a little difficulty.
Customizing Node Types
Hi there,
You can search the "categories" listing at right in which all site articles are grouped by category. In addition, at the bottom of each article you'll also find a category listing with all the categories that article fits under. Finally, you can search the site directly if you know what you're looking for by using the search box at top.
As far as customizing node types, you can customize node types using the CCK (Content Creation Kit) in Drupal 4.7.x to define your own node types (ie. extending "page" to define types such as "press release," "article," "resume page," etc.). You can then theme each node type using the Contemplate module.
In Drupal 5.0 content types are included by default.
Good job
Great post
Interesting Modules
I like some of the modules that you have listed and actually implemented a few of them on my site. At the moment, I am hesitating on upgrading Drupal to version 5, because there is a lot of features in version 4 which remain rather attractive to me.
Upgrading to Drupal 5
We didn't upgrade this site to Drupal 5 until a couple months ago as well. We were holding off until the modules we needed had all been upgraded. May I ask what's still holding you back? We're always curious to see what still needs to be upped to 5.
Drupal has over 1000 modules
Yeah! Drupal is awesome. This site helped me a lot when it came to finding the modules that I needed.
It made a huge difference, night and day, when it came to search for Drupal modules.
Drupal saves time
Dupral has made a huge difference in my life... It saves me so much time...
Default filter?
What is the "default filter"? Please explain in detail.
Drupal's default filter
Drupal's default filter module lets you specify default input filters (filtered HTML, full HTML, etc.) for each user. This way, the user won't need to select the input format every time they publish new content.