I created this post to use as a companion piece for a presentation I'm giving at the Philly PHP Meetup's "Drupal Show and Tell" event. I also highly recommend checking out these two podocasts/posts on Lullabot: 50 Drupal Tips and Tricks and Top 40 Projects. The big three
- CCK - Drupal comes with a few "out-of-the-box" content types - pages, blogs, forums, stories, and books - but these are fairly simple and very restricted without the help of the mighty Content Creation Kit. CCK allows you to create your own custom content types, or add new fields to the core content types. There are many add-ons for CCK that extend Drupal's content without any programing.
- Views - Simply put Views is a list of information, but there really isn't much else simple about this powerful module, accept a simple fact: you cannot build a professional Drupal site without this module.
- Panels 2 - Laying out pages has never been easier or more user friendly. Some designers look down upon this because of Drupal's theming system, but the drag and drop functions and ease of control over various elements make this a must have module.
- Audio - This is the best media module there is, easy to use, well supported, and works all the time, something that I wish I could say about all of the other media modules (see Image vs Imagecache below).
- Emfield - If other sites will host your videos for you, and help with your SEO along the way, then why host them in-house? This great module gives you a field for CCK that enables you to enter in easily embed media from a third party host (Note: I help maintain this one, so I'm biased in regards to its awesomeness)
- Imagefield & Imagecache vs Image & Image Exact see this great post at Lullabot for a rundown of the relative benefits of each, both ways have benefits and drawbacks.
- TinyMCE (the module I love to hate) - As much as most web people hate WYSIWYG editors, most end users just cannot function without them. I like this WYSIWYG editor because of its ability to work with the Image Assist module and its ability to add in the "break" without having to edit the real text.
- Event - it isn't perfect, and has a lot of well known flaws, but it's the best event module available at the moment
- Webform - the best module for creating forms and polls.
- Contemplate - This is a great little tool to use until you get the hang of theming nodes, including figuring out all of the available variables attached to a piece of content. Even now that I know how to get the variables and theme the nodes, I still use this fairly often because of its ease of use.
- Insert View - This creates an input format that allows you to insert views directly into a node, which can make laying out pages with views a lot easier.
- Panels Tabs - Allows you to easily use tabs within panels.
- Pathauto - this little bugger simply creates URL paths for your posts, but it also helps make Drupal one of the best SEO tools around.
- Service Links - Adds links that enable users to add site content to social bookmarking/networking sites like Facebook, del.icio.us, and Digg.
- Node Queue - enables you to easily add content to a list, similar to views, but a lot easier for an end user to control.
- Organic Groups - a great way to create multiple groups of users on one site.
- Signwriter - creates really nice custom header images for your site using fonts you upload. No longer do you have to sacrifice ease of editing for a consistent look!
- Taxonomy Context - for sites with large or complex taxonomies, this is invaluable, as it gives some really easy ways to navigate through them
- Feed API - a new standard for handling feeds. Easy to extend, and out-of-the-box it allows things like creating nodes from feeds, linking to an original item rather than to the feed location, and automatic updates of feed items.
- Admin Menu or Simple Menu - both of these create a dropdown on the top of the screen that gives easy access to all of the admin functions. I thought this was pretty silly at first, but it saves me tons of time now.
- Devel - an indespesible module for Drupal developers. Get to know it, you will thank yourself a 100x.
- Update Status - do you know if your modules are all up to date? If you're not using CVS, and haven't installed this module, the answer is probably now.
- Backup - This does a complete backup of a site, and everyone should be running something like this once a month.
- akismet - the best anti-spam service in the world.
- captcha - also helps with spam
- autosave - this may hamper performance a bit, but your users will love you (at some point) for installing it. It does as the name says and saves your working document at specified intervals to make sure you don't hit the back button and lose an hour of work.