メールフォーム作成用プラグイン(その2)

2007年1月27日
メールフォームプラグインにクロスサイトスクリプティングの脆弱性等の不具合が見つかりました。申し訳ありません。
こちらのエントリーをご参照の上、最新版にアップデートしてください。

2007年1月23日
メールフォームプラグインのバージョン1.20を公開しました。
解説も更新しましたので、こちらのエントリーをご参照ください。

昨日に続き、Movable Typeでのメールフォーム作成の手順を解説します。
今日は、メールフォーム用のテンプレートの作り方です。

1.インデックステンプレートを新規作成する

メールフォームのテンプレートは、インデックステンプレートとして作ります。
インデックステンプレートを新規作成し、テンプレート名と出力ファイル名をつけます。これらの名前の決め方には、特に決まりはありません。

2.メール送信フォームの作成

メール送信フォームは、HTMLのformタグを使って作ります。
formタグのaction属性は「<$MTCGIPath$>plugins/MailForm/mt-mail-form.cgi」にします。また、method属性はpostにします。

送信者名/送信者のメールアドレス/件名はinputタグ、本文はtextareaタグで作ります。
また、「送信」と「確認」の2つのボタンも作ります。これらもinputタグで作ります。
inputタグとtextareaタグは、name属性を指定する必要があります。属性のつけ方は以下の表の通りです。

項目name属性
送信者名mail_author
メールアドレスmail_email
件名mail_subject
本文mail_body
送信ボタンmail_post
確認ボタンmail_preview

さらに、メールフォームの部分には、以下のタグも入れます。

<input type="hidden" name="mail_blog_id" id="mail_blog_id" value="<$MTBlogID$>" />

3.メールフォームのタグの組み合わせ例

メールフォーム部分のタグの組み合わせ例は、以下のようになります。

<form action="<$MTCGIPath$>plugins/MailForm/mt-mail-form.cgi" method="post">
<p>お名前<br /><input type="text" size="30" name="mail_author" /></p>
<p>メールアドレス<br /><input type="text" size="30" name="mail_email" /></p>
<p>タイトル<br /><input type="text" size="30" name="mail_subject" /></p>
<p>本文<br /><textarea rows="10" cols="50" name="mail_text"></textarea></p>
<input type="submit" name="mail_preview" value="確認" />
<input type="submit" name="mail_post" value="送信" />
<input type="hidden" name="mail_blog_id" value="<$MTBlogID$>" />
</form>