Using drupal as a first class wiki platform

Drupal doesn’t have a built-in wiki, but there are different options for incorporating a wiki with a drupal site.

One option is to use a separate wiki engine such as the popular mediawiki. There is an AuthDrupal extension for mediawiki that makes mediawiki use the drupal database for user account authentication.

Or you can create a wiki entirely within drupal itself. There are different options here as well, but some modules that you can use include:

  • wikitools – you create a new content type (called ‘wiki page’ for example), and set wikitools to use it as the wiki type. Wikitools lets you set it so anyone you wish can edit the page, and it prevents duplicate pages from being created. Make sure you check ‘create new revision’ as the default option for that content type. You can also use the built-in book content type for wiki pages, if you want to enable hierarchically organized wiki pages for example as supported by the Atlassian Confluence wiki engine. See also these notes on making a drupal wiki with the book module.
  • talk is a nice module that puts the comments on a separate talk page, just like with most wikis.
  • freelinking lets people create [[bracket style]] links to other pages. If the page name doesn’t exist, freelinking displays links to search for or create the page.
  • interwiki lets you create [single bracketed] links to other wikis or sites, such as for example: [map:Logan, UT] or [dictionary:someterm].
  • video_filter lets people easily create embedded video links with syntax such as [video:
  • Other modules that add wiki-like touches include tableofcontents, recent_changes, and trash. Although in the case of recent_changes, I found the built-in “tracker” view was just as good at showing recent activity on the drupal site.
  • If you want an input format that supports full mediawiki syntax, try for example pearwiki_filter, flexifilter (drupal 6 only), or the mediawiki module. I personally am fine with the WYSIWYG FCKEditor and IMCE modules instead, since special wiki syntaxes are difficult to master and can have the effect of alienating many users.

Other tips:
If you use pathauto and organic groups (og) you can have group-only wiki pages show up in a separate namespace. Also, recent versions of organic groups added a checkbox in the content types administration to set a content type as ‘wiki-like’, being editable by anyone in a group, which may mean wikitools is not even necessary if you only want wikis for groups.

Posted in drupal
7 comments on “Using drupal as a first class wiki platform
  1. Kyle Mathews says:

    Something interesting we did with wikis for a Drupal installation at BYU. Using panels, we embedded a wiki page for each organic group. Here’s an example page:

  2. Cory says:

    which version of drupal are you running (5 or 6)?I’m in need of a wiki and your article is quite enticing. However, since I’m running on D6 I figured I’d see which package this applies to. Granted, I could probably just see if these modules exist on drupal.orgThx,:cD

  3. Doug Holton says:

    I’m still using 5.7 because views and cck-based modules are still not quite ready with drupal 6 versions.But the modules listed here like wikitools, talk, freelinking, and probably many of the others have Drupal 6 versions though.

  4. brooke, from the department says:

    Hi Doug – I have development project that I’m hoping to track down a grant for. The project would involve development of a digital library, opencourseware, and then need an instructional architect (mimi’s project) type interface for putting together objects from the digital library and possibly pulling in pieces of the ocw site. The front end would need the requirement that someone non-techy should be able to interface with it to put in objects in the digital library, ocw, and then of course the IA piece. is drupal a tool to explore for something like this?🙂

  5. Bill Fitzgerald says:

    Hello, Doug (and brooke) — I’m coming late to this thread, but Drupal would be an ideal platform for OCW — On the technical side, you could build your library of objects, and then reference specific objects and fields by using nodereferences and veiws, or possibly even the FieldReference module (at )Then, you could clean up the front end with some nice design — in particular, you’d want to clean up your various node/add forms.FWIW, I wrote up a blog post a while back breaking down how to create a distributed publishing framework for OERs using Drupal at

  6. Doug Holton says:

    Yeah and someone already created a learning object repository in drupal, see: it’s probably possible Brooke, but it would take some work, and a lot of decisions like whether to do something in drupal or off-load it to another tool (like educommons for ocw, or that archiving tool dtools or whatever it is called). You might talk to Ryan Bair in our department too, he has a drupal 6 book that is helpful for learning this stuff.

  7. Doug Holton says:

    I made some fixes to the freelinking and wikitools module to make them work better with organic groups.So if you make a link like [[Some Page]] it will go to the page with that name in your group if there is one:

Comments are closed.


Enter your email address to follow this blog and receive notifications of new posts by email.

Join 4,341 other followers

%d bloggers like this: