Wednesday, May 19, 2010

Some useful Drupal modules you may not have heard about

We’re using many of these modules on our newly upgraded to drupal 6 department website at http://itls.usu.edu/.

Even if you’re experienced with Drupal, you may not have heard of some of these modules. I encourage you to check them out to see if they are of use to your site(s). I’ve marked the ones I consider essential.

If you’d like to know how we did some of the features on our site just contact me, or wait a few weeks and I’ll be releasing a generic version of our site (called “Department 2.0″). For example there is a job board, upcoming calendar events block, slideshow, customized listing of people, and our groups have numerous custom views and blocks and features (see my Foundations of Educational Technology class group page for example).

  • FriendFeed – Show other social networking activity via the FriendFeed.com site. I had to make a few patches to this one
  • activity – Show all activity on the site on one page, including comments and profiles edits (stuff that views still can’t show together in one view unless you use nodecomment and content_profile which convert comments and profiles to nodes)
  • admin_menu – we’re using simplemenu instead actually
  • admin_theme – so you have a clean built-in theme when doing administration work
  • advanced_help
  • ajax – works with logintoboggan and numerous other modules to make forms submit without a page reload
  • alt_login – not using now, but we needed this for ldap support before
  • auto_nodetitle – we use this to auto-title our course nodes and other things
  • autologout – in case many of your users are using shared computers and forget to log out
  • backup_migrate – ESSENTIAL
  • better_formats – ESSENTIAL if you have multiple input formats/filters – so that you don’t default to plain text for example
  • block_edit
  • calendar – works with the date module. See alternatively the event module.
  • cck – ESSENTIAL
  • comment_notify
  • commentrss – ESSENTIAL if you want to track all site activity including comments without having to visit administration every time. Alternatively you can create a view of recent comments yourself with an rss feed.
  • contemplate – important if you want site administrators to be able to make changes to the site without shell access
  • context – not using yet
  • creativecommons – not using, but we may switch from the next one
  • creativecommons_lite – a bit buggy but we were using it before in drupal 5
  • custom_pagers – alternative to book
  • date – ESSENTIAL for cck types with date/time info like our job board (expiration date), calendar and so forth
  • devel – useful for debugging issues
  • diff – useful for our wiki and for tracking edits
  • draft – lets users have a ‘save as draft’ button, plus features autosave
  • drush – ESSENTIAL for easier module/theme installation and upgrading. Also works with features module. This is the only module you’ll have to install by hand.
  • ed_readmore – Improve the ‘read more’ teaser link that nobody clicks.
  • email – for email cck fields
  • extlink – distinguish internal from external links
  • fckeditor – ESSENTIAL for wysiwyg editing. See also the TinyMCE module.
  • filefield – I think this is ESSENTIAL but we aren’t using it yet. It puts uploaded files in separate folders rather than having a huge mess of files like we do now.
  • freelinking – for [[wiki links]].
  • globalredirect – ESSENTIAL for making sure you don’t have 2 or more paths with identical content. ‘node/1234′ will redirect to the nicer path for example if you use pathauto.
  • google_analytics – ESSENTIAL for tracking statistics on your site, but piwik is a recommended open source alternative.
  • image – ESSENTIAL unless you are using imagecache instead
  • imce – ESSENTIAL for making it easier for users to insert images in fckeditor. Also gives each user their own personal file space.
  • interwiki – if using a wiki
  • invisimail – obscure any email addresses users might type in a comment or node
  • javascript_aggregator – this is now mostly built-in to drupal 6, but has a few extra features
  • job_queue
  • jq
  • jquery_ui
  • ldap_integration
  • ldap_provisioning
  • link – cck field type
  • linkchecker – haven’t tried, but checks for broken links on your site
  • live – live preview of posts/comments – used on the drupal.org site
  • location – cck field type
  • logintoboggan – ESSENTIAL to me anyway – lets people login with email address instead of username among other nice features.
  • menu_block – see also nodehierarchy, submenutree and other related modules
  • messaging – ESSENTIAL along with notifications if using organic groups (og) especially
  • mimemail – we were using this, but now we are using HTMLMail with messaging/notifications instead
  • moduleinfo – ESSENTIAL – gives more info about modules on module list page
  • mollom – ESSENTIAL or else find another spam prevention solution if your site is open to any public contributions such as comments (or for example our job board)
  • nice_menus – not using, but provides suckerfish menus if not provided by your theme directly
  • node_import – importing content
  • nodecomment – turns comments into nodes – I tried this to I could show comments and node updates together in a view block, but I had to make comments og-enabled, too, which wouldn’t work for anonymous commenting, so I’m not using it now.
  • nodehierarchy – Integrates the organization of your content with the menu system
  • notifications – works with messaging – overly complicated interface though for end-users to customize their preferences
  • og – organic groups
  • og_forum – makes it easier to set up per group forums
  • og_mandatory_group – nice to force end-users to be in a group before they can contribute stuff
  • path_redirect
  • pathauto – ESSENTIAL for nicer looking, automatically generated URLs
  • permissions_api – easier administration of permissions
  • poormanscron – if you don’t have cron or it is unreliable (like on Mac OS X)
  • prepopulate – if you want to use bookmarklets for things like shared links and so forth
  • print – ESSENTIAL for printable versions of your pages
  • quicktabs – we ended up using views_slideshow instead
  • quiz – not using, but nice module
  • realname – we just have people use their real name (First Last) as their regular username, so we didn’t require this module.
  • revision_deletion – ESSENTIAL if you are using a wiki or a site with many people editing, so you can occasionally clean up stuff.
  • rules – Much nicer, easier to use alternative to workflow. We use it to do numerous things on our site, for example notifying someone when a job is posted, promoting items in certain groups to the front page, etc. Formerly called workflow_ng in drupal 5 (not upgradeable though)
  • scanner – ESSENTIAL find/replace text on your site. Regex support.
  • scheduler – set your node to be published at a future date
  • securepages – ESSENTIAL if using an SSL server (which you should)
  • similarterms
  • simplemenu – this is our end-users’ toolbar for creating content, visiting groups, etc.
  • site_map
  • site_tour
  • smtp – ESSENTIAL if sendmail doesn’t work or is restricted from your server. I label it essential because stuff like this is already included in other tools like moodle even though most won’t need it (moodle includes built-in ldap support and other things too).
  • submenutree – alternative to book module – displaying child items below a node
  • tagadelic
  • talk – if wanted for wiki pages
  • theme_editor – ESSENTIAL if you want administrators to be able to edit theme files without having shell access
  • token – ESSENTIAL – required by many other modules including pathauto
  • trash – essential but broken? We need a way for end-users to delete stuff like wiki pages in a way that administrators can undo it if they deleted something important. At least drupal 6 finally separated the edit and delete permissions.
  • twitter – if you want to have a site-wide twitter account that announces stuff on twitter
  • upload_replace – ESSENTIAL – should be built-in to drupal. Right now if you upload a new version of a file, it gets a new name, rather than moving the old file.
  • user_import – import users from a spreadsheet – warning, backup everything first – this module created duplicate entries in our profile tables a year ago
  • userplus
  • userprotect – prevent users from changing certain things in their accounts
  • video
  • video_filter – easy linking and displaying of videos from external sites
  • views – ESSENTIAL – works with cck
  • views_bulk_operations – lets you do batch operations on nodes and other things
  • views_calc
  • views_slideshow – see other alternatives for doing slideshows like slider
  • webform – ESSENTIAL if you want to do things like surveys and so forth on your site – 1000x better than the built-in poll module
  • wikitools – for wikis – move protection, etc.
  • I also posted a comparison of drupal modules for uploading large files recently, including swfupload, image_fupload, and others

No comments: