ホーム » Movable Type » A-Form » A-Form ドキュメント » 任意のテンプレートをヘッダ、フッタに利用する
任意のテンプレートをヘッダ、フッタに利用する
A-Formは、埋め込み先のブログがMTがデフォルトで用意しているテンプレートセットを利用している場合は、そのブログのヘッダ、フッタモジュールを自動でロードして確認画面、エラー画面、完了画面を表示します(※1、2)。
しかし、
- デフォルトのテンプレートセットを使っていない
- デフォルトのテンプレートセットが利用しているヘッダ、フッタのテンプレートを削除している(例えば「既定のブログ」テンプレートセットであれば「ヘッダー」、「フッター」テンプレートを削除しているなど)
- 独自のヘッダ、フッタテンプレートを用意して、ブログ全体で利用している
といった場合には、A-Formのテンプレートファイルを編集して、目的のヘッダ, フッタモジュールを<mt:Include>タグを使って読み込むよう書き換える必要があります。
対象となるA-Formテンプレートは、確認画面、エラー画面、完了画面で、具体的には以下のファイルです。
確認画面 : [plugins]/AForm/tmpl/aform_confirm.tmpl
エラー画面: [plugins]/AForm/tmpl/aform_error.tmpl
完了画面 : [plugins]/AForm/tmpl/aform_finish.tmpl
デフォルトのA-Formテンプレートでは、次のような条件判定でテンプレートセットに応じたヘッダ、フッタモジュールをincludeするよう書かれています。
ヘッダ
plugins/AForm/tmpl/aform_confirm.tmpl 5行目付近
(同様に, aform_error.tmpl, aform_finish.tmpl等も)
<mt:if name="use_mt_blog_template_set_ver42"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" id="sixapart-standard"> <head> <$mt:include module="$module_html_head"$> <title><$mt:var name="title" escape="html"$></title> </head> <body id="<$mt:BlogTemplateSetID$>" class="mt-entry-archive <$mt:Var name="page_layout"$>"> <div id="container"> <div id="container-inner"> <$mt:include module="$module_banner_header"$> <div id="content"> <div id="content-inner"> <mt:else> <$mt:include module="$module_header"> </mt:if>
フッタ
<mt:if name="use_mt_blog_template_set_ver42"> </div> </div> <$mt:include module="$module_banner_footer"$> </div> </div> </body> </html> <mt:else> <$mt:include module="$module_footer"$> </mt:if>
なお、A-Formテンプレート内では、入力ページのブログID(blog_id), ページURL(aform_url)やパス(aform_path), フォームの使用言語(aform_lang)などを MTGetVar で取得できるので、これを使ってさらに複雑なデザインの出し分けをすることも可能です。
A-Form ver.3 以降のバージョンでは、テンプレート内の日本語は排除され、以下のように置き換えられています。
HTMLヘッダー → $module_html_head
バナーヘッダー → $moudle_banner_header
ヘッダー → $module_header
バナーフッター → $module_banner_footer
フッター → $module_footer
※1 A-Formで作成されるフォームには入力画面、確認画面、エラー画面、完了画面があります。入力画面は任意のエントリーやウェブページに埋め込まれた状態で表現されるので、そのデザインは埋め込み先のブログのエントリー、ウェブページのテンプレートになります。一方、確認画面、エラー画面、完了画面は埋め込みではなく、A-Formのエンジンによって描画されますのでそのデザインはA-Formのテンプレートファイルによって既定されています。
※2 エラー画面、完了画面はブラウザのJavaScriptがオンになっている場合は表示されません。エラー画面が表示されるのは、ブラウザのJavaScriptがオフになっていて入力画面で動的にエラーチェックが行えない場合です。また、完了画面が表示されるのは、ブラウザのJavaScriptがオフになっていて、かつ、フォームの詳細設定の「送信完了時の動作」で「完了メッセージ表示後、ブログTOPへジャンプ」を指定している場合です。
携帯用のテンプレートについて
上述のご説明はPC用のテンプレートについてで、携帯用のテンプレートでは、デフォルトではテンプレートモジュールなどを読み込んでおりません。ヘッダ・フッタなど、独自にカスタマイズしてご利用いただく形になっております。
確認画面については、閲覧中の環境によってPC/携帯を自動判別しています。もしPC環境でフォームを実行されているのでしたら、確認画面はPC用になります。
アークウェブのMovable Typeブログ
新着記事
- 2024年11月 6日
Movable Type 8.0.5 / 8.4.0 / 7 r.5505 についてAシリーズは動作確認済みです - 2024年9月13日
A-Form Payment2.2.5 リリースのお知らせ - 2024年9月12日
リリースノート:A-Form PC 5.0.1/4.1.5/3.9.4, A-Member 5.0.1/4.1.5/3.9.4, A-Reserve 5.0.1/4.1.5/3.9.4 - 2024年9月 2日
2024年9月4日リリース予定のMovabletype7、8の Perl5.38.2のクラウドについて、Aシリーズは動作確認済みです - 2023年12月12日
MTプラグインAシリーズ:A-Form, A-Member, A-Reserve 5.0(MT8対応)、A-Form, A-Member, A-Reserve 4.1.4(MT7対応)リリースのお知らせ