PowerCMS™
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[新着情報] PHP 8.2 に対応した PowerCMS 6.5 の提供を開始 を追加しました。
[新着情報] PowerCMSクラウド の月額費用を、2024年7月1日より価格改定します を追加しました。
[新着情報] アルファサードのゴールデンウィーク休業について を追加しました。

PowerCMS ブログ

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

2017年01月12日

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

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

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

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

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

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

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

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


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

Recent Entries