{include}
{include} タグを使用して、
現在のテンプレートに他のテンプレートをインクルードします。
現在のテンプレートにて利用可能なあらゆる変数は、
インクルードされたテンプレートでも同じく利用可能です。
{include} タグには、テンプレートリソースのパスを含んだ
file 属性を必ず指定する必要があります。
{include} の出力をブラウザに表示する代わりに変数に格納したい場合は、
オプションの assign 属性にその変数名を定義します。
{assign}
と同等です。
インクルードされたテンプレートに変数を渡すには、
attributes
を使用します。インクルードされたテンプレートに明示的に渡された変数は、
インクルードされたファイルのスコープでのみ有効となります。
そのテンプレートに同じ名前の変数が存在する場合は、
渡された変数がそれをオーバーライドします。
全ての割り当て変数の値は、インクルードされたテンプレートのスコープが閉じた後に元に戻ります。
これは、インクルードされたテンプレート内で全ての変数を使用可能であるということです。
しかし、インクルードされたテンプレート内での変数の変更は
{include}
の後でインクルードしている側のテンプレート内では見ることはできません。
$template_dir
ディレクトリ外にあるファイルを {include} するには、
テンプレートリソース を指定します。
属性名
型
必須
デフォルト
概要
file
string
Yes
n/a
インクルードするテンプレートファイル名
assign
string
No
n/a
インクルードしたコンテンツの出力を格納する変数名
[var ...]
[var type]
No
n/a
ローカルからテンプレートに渡す変数
シンプルな {include} の例
{$title}
{include file='page_header.tpl'}
{* ここにテンプレートの本体を記述します。変数 $tpl_name
はたとえば 'contact.tpl' などに置き換えられます。
*}
{include file="$tpl_name.tpl"}
{include file='page_footer.tpl'}