メールフォームプラグインV2.0・その7(「メールフォーム」テンプレートの作成)

メールフォーム関連のテンプレートの作り方の続きとして、「メールフォーム」のテンプレートの作り方を解説します。

1.「メールフォーム」テンプレートの作り方

「メールフォーム」テンプレートは、メールフォームとして最初に表示されるページのテンプレートです。
メールを送信したい人は、このページに接続して、メールの文章等を入力します。

1-1.テンプレートの名前とファイル名の付け方

「メールフォーム」テンプレートは、インデックステンプレートとして作成します。
テンプレート名をつける際には、その先頭に「mail_form:」という接頭語をつける必要があります。
例えば、「mail_form:メールフォーム」のような名前をつけます。

また、インデックステンプレートなので、出力ファイル名も指定します。
出力ファイル名は自由に決めることができます。

1-2.テンプレートの構造

Movable Type 4のテンプレートではモジュール化が進められていますが、「メールフォーム」テンプレートもモジュールを利用して作ります。
「メインページ」のテンプレートを元にして、メールフォーム用に作りかえるのが簡単です。

メールフォームのform要素の部分は「メールフォーム共通部分」のテンプレートモジュールとして作りました。
その部分を組み込みたい位置に、「<$MTIncludeMailFormCommon$>」というタグを入れます。

なお、「メールフォーム」テンプレートの先頭には、以下のようなタグを入れておきます。
「value」の部分は、メールフォームの設定を行うと、設定の名前が自動的に入力されます。

<MTSetVar name="mail_setting" value="">

2.「メールフォーム」テンプレートの例

Movable Typeの標準テンプレートセットの場合、「メールフォーム」のテンプレートは以下のようになります。
「メインページ」のテンプレートを元に、以下の箇所をメールフォーム用に変更しています(赤字の箇所)。

  • テンプレートの先頭に「mail_setting」の変数を設定する記述を追加
  • page_titleの変数に、「メールフォーム」を設定

  • MTEntriesタグのブロックを削除して、メールフォームを組み込むためのタグを追加
<MTSetVar name="mail_setting" value="">
<MTSetVar name="body_class" value="mt-main-index">
<MTSetVar name="main_template" value="1">
<MTSetVar name="sidebar" value="1">
<MTSetVarBlock name="page_title">メールフォーム</MTSetVarBlock>
<$MTInclude module="ヘッダー"$>
 
<div>
    <h2 class="comments-open-header">メールの送信</h2>
<$MTIncludeMailFormCommon$>
</div>
 
<$MTInclude module="フッター"$>