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}
相关文档
- 怎么做seo搜索引擎优化,seo搜索引擎优化主要做什么
- 搜索seo优化,seo搜索引擎优化是做什么的
- SEO标签到底怎么用才能提升排名?
- 如何搜索引擎seo优化,6个有效的搜索引擎优化方法
- seo搜索引擎优化技术,seo搜索引擎优化软件
- seo搜索引擎优化关键词,搜索引擎优化关键词如何优化
- 搜索seo如何优化,seo搜索引擎如何优化
- 引擎力Google seo优化师实战经验:什么是301重定向,如...
- 引擎力Google Seo专家整理的网站站内SEO元素要点(下篇...
- 引擎力Google seo优化师:深度解读Google Anal...
- 引擎力谷歌优化专家总结:做好23 项谷歌seo站内设置
- 引擎力Google SEO技术总结:内容优化
- 引擎力Google seo优化师实战经验:如何提高网站页面访问速...
- 引擎力谷歌推广实战分享:如何提高你的Google Ads质量分
- 外贸网站建设之如何使用Canonical标签
- 引擎力Google SEO优化师原创总结:如何提高SEO建站质量
- 引擎力Google seo优化师实战经验:5个SEO策略来优化你...
- 引擎力谷歌SEO技术总结:关键词的类型
- 引擎力谷歌SEO实战总结:外贸营销型网站个性化设计的关键
- 引擎力谷歌优化技术实战分享:如何进行竞争对手分析
上一篇: Eyoucms程序开发:包含文件
下一篇: Eyoucms程序开发:架构总览