包含文件
在當前模版文件中包含其他的模版文件使用include標簽,標簽用法:
{include file='模版文件1,模版文件2,...' /}
包含的模板文件中不能再使用模板布局或者模板繼承。
使用模版表達式
模版表達式的定義規(guī)則為:模塊@控制器/操作
例如:
{include file="public/header" /} // 包含頭部模版header
{include file="public/menu" /} // 包含菜單模版menu
{include file="blue/public/menu" /} // 包含blue主題下面的menu模版
可以一次包含多個模版,例如:
{include file="public/header,public/menu" /}
注意,包含模版文件并不會自動調(diào)用控制器的方法,也就是說包含的其他模版文件中的變量賦值需要在當前操作中完成。
使用模版文件
可以直接包含一個模版文件名(包含完整路徑),例如:
{include file="../application/view/default/public/header.html" /}
路徑以 項目目錄/public/ 路徑下為起點
傳入?yún)?shù)
無論你使用什么方式包含外部模板,Include標簽支持在包含文件的同時傳入?yún)?shù),例如,下面的例子我們在包含header模板的時候傳入了title
和keywords
參數(shù):
{include file="Public/header" title="$title" keywords="開源WEB開發(fā)框架" /}
就可以在包含的header.html文件里面使用title和keywords變量,如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>[title]</title>
<meta name="keywords" content="[keywords]" />
</head>
上面title參數(shù)傳入的是個變量$title,模板內(nèi)的[title]最終會替換成$title的值,當然$title這個變量必須要存在。
包含文件中可以再使用include標簽包含別的文件,但注意不要形成A包含A,或者A包含B而B又包含A這樣的死循環(huán)。
注意:由于模板解析的特點,從入口模板開始解析,如果外部模板有所更改,模板引擎并不會重新編譯模板,除非在調(diào)試模式下或者緩存已經(jīng)過期。如果部署模式下修改了包含的外部模板文件后,需要把模塊的緩存目錄清空,否則無法生效。
文檔最后更新時間:2018-04-26 10:36:01
未解決你的問題?請到「問答社區(qū)」反饋你遇到的問題