PowerCMS™

MTInclude

MTInclude

テンプレートモジュールや、外部ファイルを読み込むときに使うタグです。モディファイア module や file などにより、読み込む対象を指定します。widget モディファイアを利用すれば、ウィジェット単体の読み込みも行えます。

外部ファイルを更新しても、サイトの再構築をしない限り、更新は適用されません。再構築せずに更新を反映するためには、ダイナミックパブリッシングを利用するか、SSI や PHP のインクルードを利用します。

使い方

<$MTInclude module="Module Name"$>
<$MTInclude file="/var/www/html/some-fragment.html"$>
<$MTInclude identifier="main_index"$>

モディファイア

file="file_foo"

指定した外部ファイルを読み込みます。
注意: PowerCMS 3.13、5.07、および4.38以降のバージョンでは、 file モディファイアが標準では無効化されています。これはセキュリティ対策の一環です。テンプレート編集の権限だけをもつユーザーが、ファイルシステム上の任意のファイルを読み出せるのは問題であるためです。

以前のバージョンと同様に、MTInclude タグで file="file_foo" モディファイアを使うためには、AllowFileInclude | 環境変数リファレンス(別ウィンドウで開く)をmt-config.cgi に指定してください。

module="module_foo"

テンプレートモジュールを読み込みます。

widget="widget_foo"

ウィジェット単体を読み込みます。

identifier="index_template_identifier"

インデックステンプレートの [テンプレートの種類] 項目で設定する、テンプレートの識別名を指定すると、そのテンプレートを展開します。

インデックステンプレートの識別名は以下です。

テンプレート名 識別名
Javascript javascript
RSD rsd
アーカイブインデックス archive_index
スタイルシート styles
メインページ main_index
最新記事のフィード feed_recent
blog_id="ID"

モディファイア module を指定してテンプレート・モジュールを読み込む場合、自ブログ以外のブログからモジュールを読み込むことが可能です。他のブログから読み込む場合に、テンプレートモジュールが含まれているブログの ID を指定します。

variable_foo="value"

読み込むテンプレートモジュールで参照可能な変数を設定します。

global="0|1"

1 を指定すると、グローバルテンプレートにあるテンプレートモジュールをインクルードします。初期値は 0 です。

parent="0|1"

1 を指定すると、ブログの親ウェブサイトにあるテンプレートモジュールをインクルードします。親ウェブサイトにモジュールが無い場合は、何もしません(グローバルテンプレートのモジュールはインクルードしません)。初期値は 0 です。

cache="1 | 0"

読み込むテンプレートモジュールの内容をキャッシュしたいときは、値に 1 を設定します。cache モディファイアのみを付与した場合は、キャッシュのキーは自動発行され、キャッシュの生存時間は60分に設定されます。キーや生存時間を別途設定したい場合は、key モディファイアか ttl モディファイアと併用します。

cache_key="cache_key"

キャッシュのキーを設定します。このモディファイアは ttl または cache モディファイアが付与されていれば省略可能で、省略されたときは、自動的に key が発行されます。

key="cache_key"

cache_key と同じ挙動をします(cache_key のエイリアスです)。

ttl="0"

キャッシュの生存時間(単位は秒)を設定します。このモディファイアは key または cache モディファイアが設定されていれば省略可能で省略されたときは、初期値の60分が設定されます。

永久にキャッシュを保持したいときは、値に 0 と設定します。永久にキャッシュを保持する設定は、テンプレートタグで ttl モディファイアを使用した場合に設定できます。

ssi="0 | 1"

値に 1 を設定すると、読み込むテンプレートモジュール、ウィジェットを SSI を利用して構築します。SSI を利用した構築を行わない場合は、値に 0 を設定します。初期値は 0 です。

MTInclude と関連のあるテンプレートタグ (2)