PowerCMS™
2025年1月1日購入分よりライセンスの価格を改定いたします。
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[よくあるご質問] システムログに「タスクを実行するために必要なロックを獲得できませんでした」というログが残っている を追加しました。
[よくあるご質問] 特定のシステムログに絞って確認できますか? を追加しました。

PowerCMS ブログ

ホーム > PowerCMS ブログ > プラグイン > ContactFormの複数のベーステンプレートをモジュール管理可能にするプラグイン

2017年01月12日

ContactFormの複数のベーステンプレートをモジュール管理可能にするプラグイン

先日のブログ記事で ContactForm のベーステンプレートを代替テンプレートでカスタマイズする方法を紹介しました。

先のエントリには書きましたが、代替テンプレートでのカスタマイズをでは下記の点で改善の余地があります。

  • ダイナミックパブリッシング(DynamicMTML)に対応できない
  • フォームやブログ/ウェブサイトによって違うモジュールを利用したい場合、mt:Ifタグによって分岐をさせなければならない(フォームの種類が多い場合、冗長なテンプレートになってしまう)

そこで、ベーステンプレートをテンプレートモジュールとして作成し、各フォームの設定画面毎にベーステンプレートを選択できるようにするプラグインを作成しました。

まず、先の記事などを参考に、ContactFormのベーステンプレートをテンプレートモジュールとして作成します。プラグインをインストールすると、フォームの作成・編集画面に追加されたベーステンプレートID入力欄が表示されるようになります。ここに、モジュールの template_id を入力します。こうすることで、formタグを含む ContactForm のベーステンプレートをフォーム毎に指定することができるようになります。

フォームの作成・編集画面に追加されたベーステンプレートID入力欄

空欄の場合は、オリジナルのベーステンプレートが適用されます。このプラグインは ダイナミック・パブリッシング(DynamicMTML)にも対応しています。


カテゴリー
テンプレート作成Tips
プラグイン
技術情報

Recent Entries