联系电话:020-28187900

初识K9模板标签

发表时间:2015-01-08 阅读: 10249

模板标签是什么呢?从通俗的角度来说它就是管理网站内容是如何调用出来的。包括按指定的日期、栏目、条件、需求调用到网页的指定位置等,所以,模板标签是一款CMS系统中很重要的组成部分,正是因为它,才牵引着网站的千变万化,也是表现网站策划制作者智慧的重要地方。

一般的动态语言网站,网页在展示出来之前,经过两个很重要的步骤:服务器端浏览器的解析。

当访客通过浏览器请求了一个网址之后,背后发生了一连串事件,除了网络协议、路由以外,首先响应的就是服务器端的解析。

服务器端负责解析脚本的组件会接受到访客的请求,从而根据请求的网页的脚本去读取数据,然后输出HTML代码。

访客的浏览器就会接收到服务器端输出的HTML代码,然后结合页面自带的js和css代码,以代码指定的样式和排版解析并展示出来。也就是我们用浏览器看到的网页了。

因为浏览器解析的是HTML代码,那么在服务器端如何输出HTML,就成CMS需要解决的事情了。

  • CMS出来之前,我们制作动态语言网站,都是从头到尾手写代码,包括前台的调用展示和后台内容管理。
  • CMS出来以后,我们只需要规划好栏目,制作模板,并且根据策划调用内容出来,方便很多,幕后功臣很大一个就是模板标签在起的作用。

有了模板标签,我们前台调用展示就无需手写代码了,因为CMS系统会把一些常见的调用条件简化成一些类似HTML格式的语句,从而降低前台调用的学习成本。

在CMS模板标签的演变进程,又有了灵活性和易用性的艰难选择,这就不具体展开了。

K9模板是在灵活性和易用性做了一个平衡的选择:挑选标签体系中的万能标签作为唯一标签。

  • 好处:用户无需注意标签适用范围,就是全站所有页面都能使用。
  • 弊端:学习门槛比较高,万能标签就是和数据库打交道,虽然不能成为编程语言,但是掌握编程语言的话会让标签强大无比。

在万能标签当中,我们前期只要硬啃一些苦工,你就可以站在K9的肩膀之上,用K9的强大标签编属于你自己想要的网站。这相比从零开始编码,已经省了非常多的力气。

模板标签的历史就介绍到此,下面开始初始K9模板标签(贴士:K9模板标签在K9所有版本中都一样,安装了对应的应用,该应用的模板标签才能使用)。

K9模板标签在K9的模板页面当中。

经过前面的简介系列,我们得知:

  • 模板保存在./templates/当中,每套模板一个文件夹。
  • 网站使用哪套模板,取决于根目录./config.php里面的设置。

K9的模板文件组成由以下规则组成:

  • 模板文件以php为后缀名保存。
  • 包括碎片在内每个模板文件,开头代码统一为:<?php !defined('INC') && exit('Load failure!'); ?>。
  • 模板文件的格式为utf-8,不带bom签名。

每套模板文件夹结构规则如下:

  • 首页在模板文件夹根目录,统一命名为:index.php。
  • 每个应用的模板对应一个文件夹,命名为应用的目录名称。
  • 除了应用目录名称,其他目录命名自由,包括images、js和css文件夹。


每个应用文件夹里面,结构规则如下:

  • 除了content以外,每个应用的根目录都可以指定home.php为内容应用分类的绑定的首页。
  • 应用的根目录除了home.php以外,其他的文件皆可以接受动态路径响应。
  • 应用如果有栏目等属性,应用里面则有对应的栏目文件夹。


内容应用的模板结构,保存在./templates/name/content/


论坛应用的模板结构,保存在./templates/name/forum/

其中,name代表模板的目录名称,如:企业版模板sky目录名称是sky,地方门户版模板orange目录名称是orange。

如上面所述,每个模板文件都是以php作为后缀名。

模板文件支持:

  1. PHP语句。
  2. 所有K9模板标签类型。
  3. 所有K9模板标签支持使用<!--{@res.xxx}-->注释,以方便制作网页时的可视化排版。
  4. HTML标准代码。
  5. HTML标准注释符号<!--注释内容-->,该注释经过K9模板引擎解析后正常输出注释。
  6. KingCMS注释符号<!---注释内容--->,横线三条或以上,该注释经过K9模板引擎解析后,不输出。方便用来标记调用注释。

K9模板文件当中,最重要的是模板标签。

模板标签由缩略图调用和常见类型组成,其中常见类型标签由以下21类组成:

  • 静态标签
  • 变量和数组类型标签
  • 系统参数标签
  • 模板注释代码
  • 数据统计[@rs.count]
  • 语句[foreach循环]
  • 语句[for循环]
  • 语句[if判断]
  • 语句[switch选择]
  • 语句[break 退出循环][continue 跳过本循环]
  • 引用模板文件[include 和 require]
  • 标签属性[size 截取指定长度的文本]
  • 标签属性[code 转换数据输出格式]
  • 标签属性[date 日期格式转换]
  • 标签属性[pagelist 分页标签]
  • 数据查询[循环读取]{@res}{@res.select}
  • 数据查询[单行读取]{@rs.one}
  • 数据查询[双值对应读取]{@res.two}
  • 数据查询[关联读取]{@res.join}{@res.select_join}
  • 数据查询[关联单行读取]{@rs.one_join}
  • 数据查询[站内搜索引擎]

具体的用法在云端后台:帮助,可以展开详情了解。也可以阅读公开的在线版。如果两者有异议,请以云端的为准。

建议初步阅读以上所有的标签类型,然后动手挑选一些简单的进行实验,在接着的篇章当中,我们会从容易的着手,逐一为你展开标签调用范例实例。

转载请注明出处:唯众网络


相关教程 【更多】

唯众网络