HIKIDAS MODX ARCHIVE ヒキダスサイトへ

SwitchDefaultTemplate

リソース新規作成時のデフォルトテンプレートを、任意のルールに基づいて切り替えるMODXプラグイン
MODX plugin to switch the default template for new resource by any rules

利用シーン

たとえば、イベント用のフォルダ内にリソースを新規作成する時は、イベント記事用のテンプレートが自動的にデフォルトになるようにする等、デフォルトテンプレートを、設定したルールに従って自動的に切り替えることができます。

親フォルダの使用テンプレートで切り替える

たとえば、親フォルダの使用テンプレートが「イベント一覧」であれば、イベント記事用のテンプレートがデフォルトになるようにする等。

親フォルダのエイリアスで切り替える

たとえば、親フォルダのエイリアスが「event」であれば、イベント記事用のテンプレートがデフォルトになるようにする等。

親フォルダのリソースIDで切り替える

たとえば、親フォルダのリソースIDが「4」であれば、イベント記事用のテンプレートがデフォルトになるようにする等。

ユーザのロールで切り替える

たとえば、ユーザのロール(権限)が「イベント編集者」であれば、イベント記事用のテンプレートがデフォルトになるようにする等。

ルール設定

MODX管理画面のプラグイン設定で以下のパラメータを設定します。

パラメータ

rules デフォルトテンプレートの切り替えルール
書式:「<ルールタグ>:<ルール指定値>:<デフォルトテンプレート>,...」
(項目間はコロン「:」で区切り、複数のルール指定はカンマ「,」で区切ります)
複数指定時は、指定した順にルールをチェックします。
どのルールにも該当しない場合は、グローバル設定の通りになります。
例1)parentAlias:event:5
  1. 親のエイリアスが「event」の場合、デフォルトテンプレートは「5」に。
例2)parentAlias:news:4,parentAlias:event:5,parentId:2:3
  1. 親のエイリアスが「news」の場合、デフォルトテンプレートは「4」に。
  2. 親のエイリアスが「event」の場合、デフォルトテンプレートは「5」に。
  3. 親のリソースIDが「2」の場合、デフォルトテンプレートは「3」に。
ルールタグ parentTemplate 親フォルダ(コンテナ)の使用テンプレート(id)で切り替える
parentAlias 親フォルダ(コンテナ)のエイリアスで切り替える
parentId 親フォルダ(コンテナ)のリソースIDで切り替える
userRole ユーザのロール(id)で切り替える
only_new 新規作成時のみデフォルトテンプレートを切り替える場合「1」を指定します。

インストール

設定項目 設定内容 設定例
プラグイン名 任意 SwitchDefaultTemplate
システムイベント OnDocFormPrerender  
プラグイン設定 上記「ルール設定」参照 &rules=rules;text;parentAlias:news:4;
パラメータ
rules parentAlias:news:4

&only_new=新規作成時のみ切り替える;int;1;
パラメータ
only_new 1

インストール手順(一般的なMODXプラグインと同様です)

  1. ダウンロードしたZIPファイルを全て展開(解凍)します。
  2. その中のファイル「SwitchDefaultTemplate.ja.txt」をテキストエディタで開きます。
  3. 「SwitchDefaultTemplate.ja.txt」のソースコードを全て選択してコピーします。
  4. MODX管理画面:エレメント > エレメント管理 > プラグインで、「プラグインを作成」をクリックします。
  5. プラグイン名に「SwitchDefaultTemplate」と入力します。(別の名前でも構いません)
  6. 「プラグイン コード」欄に、ソースコードを貼付けます。
  7. 「システムイベント」タブで「OnDocFormPrerender」にチェックを付けます。
  8. 必要に応じて、プラグイン設定のパラメータ「rules」「only_new」の値を入力します。
    (後からでも変更できます。)
  9. 「更新」をクリックします。

ダウンロード

バージョン1.4.1 (2015-11-17)
SwitchDefaultTemplate-1.4.1.zip

ライセンス

GNU Public License (GPL)

更新履歴

免責

  1. 本サイトで公開されている情報、プログラム等を利用した場合に発生するあらゆる障害に関して、 本サイト運営者、各リソース提供者は責任を負いません。
  2. 情報、プログラム等の不都合に対して本サイト運営者、各リソース提供者は その問題箇所の訂正やアップデートの責務を負いません。