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」を出力ファイル名に合わせて書き換えます。






![Hardcore Will Never Die, But You Will [Disc 2] Hardcore Will Never Die, But You Will [Disc 2]](http://userserve-ak.last.fm/serve/34s/71241534.jpg)
![Hardcore Will Never Die, But You Will [Bonus Tracks] Hardcore Will Never Die, But You Will [Bonus Tracks]](http://userserve-ak.last.fm/serve/34s/67192634.jpg)



コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。
お忙しい中失礼致します。
MT4.2、プロフェッショナルウェブサイトテンプレートセットを使用の状態で、こちらのMailForm_2_10bをインストールさせて頂きました。
マニュアルをもとに一通り設定したのですが、送信ボタンを押すと「Got an error: syntax error」と表示されメール送信が出来ません。
「その5・メール送信エラーへの対策」内に記述されている対処法も試したのですが改善されません。
このような状況なのですが、改善方法、対処法など教えて頂ければと思いコメントさせて頂きました。
何卒宜しくお願いいたします。
>yoshidaさん
こんにちは。
「syntax error」は「文法エラー」のことで、メールフォームプラグインのプログラムのどこかで文法エラーが起こっているようです。
ただ、このプラグインを正しくインストールできていれば、文法エラーが出ることはないはずですので、インストールがどこかうまくいっていないのではないかと思われます。
プラグインのファイルをアップロードする際に、asciiモードでアップロードしてみてください。
早速のご対応ありがとうございます。
教えて頂いた方法で最初からやり直してみます。
ありがとうございます!