「プロフェッショナルウェブサイト」テンプレートセットでメールフォームを使う

MT4.2には「プロフェッショナルウェブサイト」というテンプレートセットが付属しています。
トップページが一般のサイトのようなデザインになっていて、ブログではないサイトを作ることを想定したものです。

このプロフェッショナルウェブサイトテンプレートセットで、拙作のメールフォームプラグインを使いたいというご質問をいただきました。
その方法を解説します。

1.サンプルテンプレートのインストール

プロフェッショナルウェブサイトテンプレートセットは、Movable Type 4.1の標準テンプレートセットをベースにした構造になっています。
そのため、メールフォームのサンプルテンプレートも、「Movable Type 4.1標準テンプレートセット用」をインストールします。

なお、4.2用のサンプルテンプレートは使うことができません。
4.2用をインストールすると、メールフォームテンプレートの再構築の際に「『HTMLヘッダー』というモジュールテンプレートが見つかりませんでした。」というエラーが出ます。
間違って4.2用をインストールした場合は、テンプレート一覧のページでメールフォーム関連のテンプレートをすべて削除して、その後に4.1用のサンプルテンプレートをインストールし直します。

2.メールフォーム関連のテンプレートの書き換え

サンプルテンプレートをインストールしたら、メールフォームのテンプレートと、送信確認/送信エラー/送信完了のテンプレートモジュールの先頭に、以下の行を追加します。

<mt:SetVar name="mail_form_page" value="1">

3.「ナビゲーション」テンプレートモジュールの書き換え

プロフェッショナルウェブサイトテンプレートセットでは、各ページのバナーの下にナビゲーションが表示されるようになっています。
このナビゲーションの中に「お問い合わせ」のリンクがあり、「お問い合わせ」のウェブページに移動するようになっています。
ナビゲーションは、「ナビゲーション」というテンプレートモジュールに基づいて出力されます。

ただ、メールフォームをインストールしたら、「お問い合わせ」のリンクをクリックしたときに、メールフォームが表示されるようにしたいところです。
そこで、「ナビゲーション」テンプレートモジュールを書き換えます。

「ナビゲーション」テンプレートモジュールを開くと、その最後の方に以下の部分があります。

<mt:Pages tags="@contact" limit="1">
<mt:SetVarBlock name="this_page_id"><$mt:PageID$></mt:SetVarBlock>
<li class="last<mt:If name="nav_on" eq="$this_page_id"> on</mt:If>"><a href="<$mt:PagePermalink$>"><$mt:PageTitle$></a></li>
</mt:Pages>

ここを以下のように書き換えます。

<li class="last<mt:If name="mail_form_page"> on</mt:If>"><a href="<$mt:BlogURL$>mailform.html">お問い合わせ</a></li>

なお、メールフォームテンプレートの出力ファイル名を「mailform.html」以外にしている場合は、上記のリンク内の「mailform.html」を出力ファイル名に合わせて書き換えます。

MT Cloud Starter Kit
Movable Typeのプラグイン集「MT Cloud Starter Kit」をぜひご利用ください