こうして私はWebチームのメンバおよびその他数名の協力者とともに、数カ月がかりでコンテンツキャパシティを増量させたHaikuプロジェクト用の新規Webサイトを構築したのだが、むしろこの件に関してより重要なのは、コミュニティメンバによる参加を活性化できたことであろう。そしてこれも数カ月前の話だが、サンフランシスコの湾岸地区におけるHaikuユーザグループの立ち上げをサポートした際にも、Drupal 5.0を使用したNORCAL-HUG Webサイトの構築を行った。この2つの事例を通じて私が学べたのは、プロジェクトを支えるコミュニティ活動をより活性化するツールとしてのDrupalの利用法である。
Drupalでのパブリッシュ(コンテンツの公開)はすべてノードという単位を介して行う。各ノードは特定のコンテンツタイプに属し、各コンテンツタイプは一連のフィールド(タイトル、ボディ、アンカーなど)、設定(メニュー、パス、コメントの有無など)、ワークフロー(パブリッシュ済み、フロントページに移動済みなど)と関連づけられている。デフォルトのコンテンツタイプは、ブログエントリ、ページ(固定ページ用)、ストーリ(記事用)である。こうしたコンテンツタイプの追加は、デフォルトでインストールされるモジュール群(フォーラムトピック用のForumモジュールなど)を有効化するか、あるいは追加モジュール(Eventモジュールなど)を新たにインストールして有効化することによって行える。またユーザ独自のコンテンツタイプをカスタムのフィールド群とデフォルトの設定およびワークフローを付けて作成することも可能であり、例えばWebサイトにFAQページを追加したい場合はFAQというコンテンツタイプを作成し、そこにQuestion、Answer、Categoryフィールドを設けておけばいいだろう(実際にはこうした用途を想定したFAQモジュールが既に用意されている)。
Drupalは強力な機能群をコアに据えた非常に高度なシステムであるが、これをコミュニティベースでのWebサイト構築に適した選択肢の1つとしているのは、豊富な機能拡張用のモジュールの存在と運用面での柔軟性と言っていいだろう。例えばGoogleにあるDrupal Tech Talkの説明(ビデオの再生)によると現状で1,200以上のモジュールが使用可能だとされている。
