Eyoucms程序开发:标签库
内置的模板引擎除了支持普通变量的输出之外,更强大的地方在于标签库功能。
标签库类似于Java的Struts中的JSP标签库,每一个标签库是一个独立的标签库文件,标签库中的每一个标签完成某个功能,采用XML标签方式(包括开放标签和闭合标签)。
标签库分为内置和扩展标签库,内置标签库是Cx
标签库。
导入标签库
使用taglib标签导入当前模板中需要使用的标签库,例如:
{taglib name="html" /}
如果没有定义html标签库的话,则导入无效。
也可以导入多个标签库,使用:
{taglib name="html,article" /}
导入标签库后,就可以使用标签库中定义的标签了,假设article标签库中定义了read标签:
{article:read name="hello" id="data" }
{$data.id}:{$data.title}
{/article:read}
在上面的标签中,{article:read}... {/article:read}
就是闭合标签,起始和结束标签必须成对出现。
如果是 {article:read name="hello" /}
就是开放标签。
闭合和开放标签取决于标签库中的定义,一旦定义后就不能混淆使用,否则就会出现错误。
内置标签
内置标签库无需导入即可使用,并且不需要加XML中的标签库前缀,ThinkPHP内置的标签库是Cx标签库,所以,Cx标签库中的所有标签,我们可以在模板文件中直接使用,我们可以这样使用:
{eq name="status" value="1" }
正常
{/eq}
如果Cx不是内置标签的话,可能就需要这么使用了:
{cx:eq name="status" value="1" }
正常
{/cx:eq}
更多的Cx标签库中的标签用法,参考内置标签。
内置标签库可以简化模板中标签的使用,所以,我们还可以把其他的标签库定义为内置标签库(前提是多个标签库没有标签冲突的情况),例如:
'taglib_build_in' => 'cx,article'
配置后,上面的标签用法就可以改为:
{read name="hello" id="data" }
{$data.id}:{$data.title}
{/read}
标签库预加载
标签库预加载是指无需手动在模板文件中导入标签库即可使用标签库中的标签,通常用于某个标签库需要被大多数模板使用的情况。
在应用或者模块的配置文件中添加:
'taglib_pre_load' => 'article,html'
设置后,模板文件就不再需要使用
{taglib name="html,article" /}
但是仍然可以在模板中调用:
{article:read name="hello" id="data" }
{$data.id}:{$data.title}
{/article:read}
相关文档
- 企业在做搜索引擎优化时应该注意什么?,企业网站搜索引擎优化方案
- 体育直播网站模板推荐:快速搭建专业直播平台的最佳选择
- 足球直播网站模板推荐:快速搭建专业直播平台的最佳选择
- 专业足球网站建设指南:企业建站与模板建站全攻略
- pbootcms模板 后台升级程序后导致网站打不开 Parse ...
- pbootcms模板后台登录页面在哪里修改
- pbootcms模板文章列表没有缩略图时也不显示默认图片
- pbootcms模板利用宝塔面板计划任务执行自动推送网址到百度
- pbootcms标签分页中url会无限重复叠加的解决方案
- pbootcms模板修改tags实现keywords内容关联匹配
- pbootcms模板自动清理runtime缓存
- pbootcms模板标签序数从2开始
- pbootcms模板幻灯片调用代码大全
- pbootcms模板首页循环调用所有栏目和对应内容
- pbootcms模板如何输出当前页面的完整url地址
- pbootcms模板文件如何调用网站所有的文章
- pbootcms模板文章列表序号调用标签
- pbootcms模板获取指定栏目下面的所有单页内容
- pbootcms后台的百度普通收录token怎么填写?怎么获得?
- pbootcms网站标签pboot:list当前文档高亮设置教程
上一篇: Eyoucms程序开发:包含文件
下一篇: Eyoucms程序开发:架构总览