Eyoucms程序开发:包含文件
在当前模版文件中包含其他的模版文件使用include标签,标签用法:
{include file='模版文件1,模版文件2,...' /}
包含的模板文件中不能再使用模板布局或者模板继承。
使用模版表达式
模版表达式的定义规则为:模块@控制器/操作
例如:
{include file="public/header" /} // 包含头部模版header
{include file="public/menu" /} // 包含菜单模版menu
{include file="blue/public/menu" /} // 包含blue主题下面的menu模版
可以一次包含多个模版,例如:
{include file="public/header,public/menu" /}
注意,包含模版文件并不会自动调用控制器的方法,也就是说包含的其他模版文件中的变量赋值需要在当前操作中完成。
使用模版文件
可以直接包含一个模版文件名(包含完整路径),例如:
{include file="../application/view/default/public/header.html" /}
路径以 项目目录/public/ 路径下为起点
传入参数
无论你使用什么方式包含外部模板,Include标签支持在包含文件的同时传入参数,例如,下面的例子我们在包含header模板的时候传入了title
和keywords
参数:
{include file="Public/header" title="$title" keywords="开源WEB开发框架" /}
就可以在包含的header.html文件里面使用title和keywords变量,如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>[title]title>
<meta name="keywords" content="[keywords]" />
head>
上面title参数传入的是个变量$title,模板内的[title]最终会替换成$title的值,当然$title这个变量必须要存在。
包含文件中可以再使用include标签包含别的文件,但注意不要形成A包含A,或者A包含B而B又包含A这样的死循环。
注意:由于模板解析的特点,从入口模板开始解析,如果外部模板有所更改,模板引擎并不会重新编译模板,除非在调试模式下或者缓存已经过期。如果部署模式下修改了包含的外部模板文件后,需要把模块的缓存目录清空,否则无法生效。
相关文档
- 迅睿cms读取zip压缩包文件目录结构配合jsTree展示文件树...
- 迅睿cms如何在前端判断当前页面是哪一个模板文件
- 迅睿CMS:模板文件不存在
- 迅睿CMS:封面栏目无法生成静态的分页文件,无法下一页
- 迅睿CMS:域名改错了怎么还原
- 迅睿CMS:百度编辑器配置文件
- 当前栏目如何调用同级栏目?
- 当前栏目如何调用子栏目?
- 易优channel栏目标签的附加功能使用教程
- 获取当前文章页面栏目名称和栏目链接栏目图片的方法
- EYOUCMS 当前位置导航的修改方法
- 在线留言单选框选择的判断问题
- 获取当前文档url地址的方法
- 在其它页面调用单页文章内容的方法
- EYOU 当前栏目页判断有无子栏目
- arclist循环中,判断如果是第一个li,则添加固定的css,...
- 当前栏目如何只调用第一层级栏目
- 装修类网站如何使用关联设计师功能
- 易优CMS 栏目页分离调用二级栏目导航和三级栏目导航
- 当前栏目如何调用同级兼下级栏目?
上一篇: Eyoucms程序开发:模板继承
下一篇: Eyoucms程序开发:标签库