STL语言规则
和 HTML 语言一样,STL语言也是一种标准通用标记语言,采用与 HTML 语言一致的语法和规则。
STL语言并不复杂,但功能强大,其主要规则如下:
标签不区分大小写
STL标签是不区分大小写的,和 HTML 标签一样,<stl:a> 和 <STL:A> 是相同的。
属性值区分大小写
STL标签的属性值是区分大小写的,例如 <stl:a channelIndex="News"> 和 <stl:a channelIndex="NEWS"> 是不同的。
结束标记可以省略
与 HTML 一样,在没有子标签的情况下,STL 可以省略结束标记。例如 <stl:value></stl:value> 与 <stl:value /> 是一致的。
标签可以嵌套标签
与 HTML 一样,STL 的标签可以相互嵌套,将一个或多个STL标签放到其他STL标签内部。例如 <stl:a><stl:content type="title"></stl:content></stl:a> 。
#元素及实体
STL标签由元素及实体组成,元素以尖括号 <> 作为标记,实体以大括号 {} 作为标记。
例如显示内容标题可以采用STL 元素: <stl:content type="title"></stl:content> 也可以采用STL 实体: {stl:content type="title"} 或者内容实体的简写: {content.title}。
STL元素和STL实体的最大区别在于元素能够嵌套子标签而实体无法嵌套子标签,例如链接标签 <stl:a channelIndex="新闻">News</stl:a> (将解析为HTML A标签)无法通过实体 {stl:a channelIndex="新闻"} (将解析为对应的链接地址字符串)表示。
在模板中你可以使用元素也可以使用实体,通常情况下在独立使用时采用STL元素,在嵌入标签属性时采用STL实体,例如独立使用时采用:<stl:content type="summary"></stl:content>,嵌入属性时采用:<stl:a title="{stl:content type=summary}">。
STL标签的属性值使用英文双引号标识,例如:<stl:content type="title"></stl:content>,STL实体的属性可以使用英文双引号、英文单引号或者无标识,例如:{stl:content type="title"},{stl:content type='title'}或者{stl:content type=title}均为正确的写法。
#地址通配符
在STL标签中,地址使用通配符(“~”)和(“@”)来进行存储和读取,您可以使用通配符(“~”)来表示应用程序的根目录,使用通配符(“@”)来表示当前站点的域名地址,而不需要将地址硬编码为文件的绝对地址。
例如,您可以使用 <stl:a href="~/index.html">主站</stl:a> 生成指向到主站点index.html文件的链接,使用 <stl:a href="@/index.html">本站</stl:a> 生成指向到当前站点index.html文件的链接。
和 HTML 语言一样,STL语言也是一种标准通用标记语言,采用与 HTML 语言一致的语法和规则。
STL语言并不复杂,但功能强大,其主要规则如下:
标签不区分大小写
STL标签是不区分大小写的,和 HTML 标签一样,<stl:a> 和 <STL:A> 是相同的。
属性值区分大小写
STL标签的属性值是区分大小写的,例如 <stl:a channelIndex="News"> 和 <stl:a channelIndex="NEWS"> 是不同的。
结束标记可以省略
与 HTML 一样,在没有子标签的情况下,STL 可以省略结束标记。例如 <stl:value></stl:value> 与 <stl:value /> 是一致的。
标签可以嵌套标签
与 HTML 一样,STL 的标签可以相互嵌套,将一个或多个STL标签放到其他STL标签内部。例如 <stl:a><stl:content type="title"></stl:content></stl:a> 。
#元素及实体
STL标签由元素及实体组成,元素以尖括号 <> 作为标记,实体以大括号 {} 作为标记。
例如显示内容标题可以采用STL 元素: <stl:content type="title"></stl:content> 也可以采用STL 实体: {stl:content type="title"} 或者内容实体的简写: {content.title}。
STL元素和STL实体的最大区别在于元素能够嵌套子标签而实体无法嵌套子标签,例如链接标签 <stl:a channelIndex="新闻">News</stl:a> (将解析为HTML A标签)无法通过实体 {stl:a channelIndex="新闻"} (将解析为对应的链接地址字符串)表示。
在模板中你可以使用元素也可以使用实体,通常情况下在独立使用时采用STL元素,在嵌入标签属性时采用STL实体,例如独立使用时采用:<stl:content type="summary"></stl:content>,嵌入属性时采用:<stl:a title="{stl:content type=summary}">。
STL标签的属性值使用英文双引号标识,例如:<stl:content type="title"></stl:content>,STL实体的属性可以使用英文双引号、英文单引号或者无标识,例如:{stl:content type="title"},{stl:content type='title'}或者{stl:content type=title}均为正确的写法。
#地址通配符
在STL标签中,地址使用通配符(“~”)和(“@”)来进行存储和读取,您可以使用通配符(“~”)来表示应用程序的根目录,使用通配符(“@”)来表示当前站点的域名地址,而不需要将地址硬编码为文件的绝对地址。
例如,您可以使用 <stl:a href="~/index.html">主站</stl:a> 生成指向到主站点index.html文件的链接,使用 <stl:a href="@/index.html">本站</stl:a> 生成指向到当前站点index.html文件的链接。