drupalで自社のページをつくる 15 - コンタクトフォームを自在にカスタマイズできるモジュール Webform を導入してみる その1

以前のエントリで、contactモジュールだと項目数が少なくて使えないので代替を探すか無ければ自作すると書いたが、
どうやら Webform - http://drupal.org/project/webform を入れれば
任意の入力項目のついたお問い合わせフォーム系が作れるらしいので入れてみた。


機能概要

これがまたいろいろ自在に設定できるので、本格的に使えるようになるまでいろいろ試してみる必要があるが、第一印象はいい。
たぶん使えそう。

できることは、

  1. 任意のフォームの項目を管理画面上で作れる …(テキストボックス・ラジオボタン・プルダウン・テキストエリア・フィールドセット・文字列・email入力用テキストボックス・hidden・アンケートフォームみたいな選択肢等 ようは何でも好きな数分作れる)
  2. 入力項目数の違うフォームを複数もてる
  3. フォーム送信後の完了画面を作れる
  4. バリデーション時と、フォーム送信時のタイミングに任意のphpコードを仕込むことができる(らしいが試してない)
  5. 送信内容を任意の送信先にメールする
  6. 送信内容が一覧で閲覧できる
  7. 送信内容を任意の区切り文字形式でダウンロードできる(カンマとかタブとかスペースとか)
  8. 項目毎にメールに記載するか否かを設定できる。

などなどと、フォームで必要な要件はほぼ全て満たしているみたいだ。


今回は、お問い合わせフォームと、社員募集のエントリーフォームを作ってみることにした。
アンケートフォームもサクッと作れるので後で作りたい。

以下要点のみメモ


インストール:

いつものように
wget http://ftp.drupal.org/files/projects/webform-6.x-2.1.3.tar.gz でモジュールをとってきて
展開し、モジュールをインストールするのみ


設定(日本語化):

管理画面側は全部英語、また表に見えるメッセージ(プルダウンのデフォルト値の select...とか、フォーム送信完了後のGo back to the form とか 多重投稿防止のエラーメッセージとか メール本文内とか)も英語なので、必要に応じて
ホーム › 管理セクション › サイトの構築 › インターフェイスの翻訳
で、翻訳したい文言を検索して適当に日本語に直す。

管理画面は別に翻訳する必要性は無いので、表側だけちょこちょこ弄る。
(お客さんに導入してお客さんに使わせる人は当然日本語化が必要になるだろう。)


設定(投稿日時):

このモジュールで生成されたページは page blog 等と同様にdrupalの一つのコンテンツタイプなので、
デフォルトインストールのままだと投稿日時が出てくる。不要なので、テーマの設定で投稿日時を非表示にする。


設定(FCKeditorから除外):

リッチテキストエディタ(FCKeditor)を出現させないように、FCKeditorの設定側で、除外する。


項目の追加:

見て何となく触っていればすぐわかるが、コンテンツの作成でWebformsを選択し、適当なnodeを作って、
その中の Form componentsで、作りたいタイプの入力項目をぽこぽこ追加していけば、フォームの完成。

あとは見栄えは、CSS injectorでcssを作って整えればそれっぽくなる。プログラムいらずで超楽ちん。

本格的に使ってみる事にする。


サンプル画像

こんな感じのが速攻作れる。
細かなバリデーションチェックは仕込まなくてはならないことと、
こういうものにありがちなんだけど、送信確認画面のステップが無いのでそこが拡張ポイント