Smarty マニュアル

前のページ

第 7章組み込み関数

次のページ

include

属性名型必須デフォルト概要

file

string

Yes

n/a

インクルードするテンプレートファイル名

assign

string

No

n/a

インクルードしたコンテンツの出力を格納する変数名

[var ...]

[var type]

No

n/a

ローカルからテンプレートに渡す変数

現在のテンプレートに他のテンプレートをインクルードします。現在のテンプレートにて利用可能なあらゆる変数は、インクルードされたテンプレート内でも同じく利用可能です。また、このタグにはテンプレートリソースのパスを含んだfile 属性を必ず指定する必要があります。

includeの出力をブラウザに表示する代わりに変数に格納したい場合は、 assign属性にその変数名を定義します。

例 7-6. インクルード関数

{include file="header.tpl"}{* ここにテンプレートの本体を記述する *}{include file="footer.tpl"}

インクルードしたテンプレートに、属性として変数を渡す事ができます。これらの変数はインクルードしたテンプレートのスコープ内でのみ使用可能です。そのテンプレートに同じ変数名が使用されている場合は、その変数をオーバーライドします。

例 7-7. インクルード関数に変数を渡す

{include file="header.tpl" table_bgcolor="#c0c0c0"}{* ここにテンプレートの本体を記述する *}{include file="footer.tpl" logo="http://my.example.com/logo.gif"}

$template_dirディレクトリ外にあるファイルをインクルードするには、テンプレートリソースを指定します。

例 7-8. インクルード関数にテンプレートリソースを使用する例

{* ファイルの絶対パス *}{include file="/usr/local/include/templates/header.tpl"}{* ファイルの絶対パス(結果は上と同じ) *}{include file="file:/usr/local/include/templates/header.tpl"}{* Windows環境のファイルの絶対パス(接頭辞の"file:"は必須) *}{include file="file:C:/www/pub/templates/header.tpl"}{* "db"と名付けられたテンプレートリソースからインクルードする *}{include file="db:header.tpl"}

ページ上段