模板的主要和全局标签

您页面的主布局位于模板文件 main.tpl 中。DataLife Engine 正是将该文件用作网站的主布局,所有其他引擎组件也都连接到它。下面我们来看其中最主要的几个:{AJAX}{info}{content}{custom},正是这些标签负责新闻的正确输出。

{AJAX} 标签输出引擎整体正常运行以及 AJAX 技术所需的 JavaScript 服务脚本。建议将其放在模板开头,即 <body> 标签之后。

{info} 标签输出已执行操作的服务信息和错误信息(例如“登录失败,密码错误”或“必须填写所有字段”),建议将其放在 {content} 标签之前。

{content} 标签是主要标签,负责直接输出发布内容以及引擎中的其他内置模块,例如注册、静态页面等。

{tags}, 标签负责输出标签云(添加到发布内容中的特殊关键词)。

[sort] {sort} [/sort], 标签负责输出用户选择新闻排序方式的界面,前提是脚本设置中允许这样做。

可应用于所有模板的全局模板标签:

{custom ...} 标签负责以自定义格式输出文章,具有以下参数:

{custom name="X" id="1,2,5-8" category="2,3,5-8" author="x" days="x" template="custom" available="global" navigation="no" from="0" limit="10" fixed="yes" unique="yes" order="date" sort="desc" cache="yes"}

其中参数如下:

name 是区块名称,之后可用于判断在该区块有内容或没有内容时,是否需要在区块外显示或隐藏某些内容。例如,写成 {custom name="block1" category="6"} 时,会显示 ID 为 6 的分类中的发布内容,而该区块本身会获得名称 “block1”。针对这个名称可使用以下标签:[custom=X] 文本 [/custom],其中 X 为区块名称;如果具有该名称的区块中包含信息,则输出其中包含的文本。也可以使用相反的标签 [not-custom=X] 文本 [/not-custom],如果具有该名称的区块不包含任何信息且没有发布内容,则输出其中包含的文本。这样您就可以根据区块中是否有发布内容来添加额外的外部样式,或者将其隐藏。例如:

[custom=block1]
    标题 
    {custom name="block1" category="6"} 
[/custom]

同时,区块本身可以位于页面上的任何位置,并不一定要放在这些标签内部。这样您就可以根据这些标签来适配和改变模板中的其他外观。您还可以在参数中同时指定多个区块,并决定按什么条件检查区块是否存在。您既可以检查所有区块是否都存在,也可以只检查列出的任意一个是否存在。若通过逗号列出区块 [custom=block1,block2,block3] 文本 [/custom],则会检查这三个 custom 区块是否全部存在,且只有三者都存在时标签才会输出文本;若通过符号 "|" 列出区块 [custom=block1|block2|block3] 文本 [/custom],则只要这三个区块中的任意一个存在,就足以输出标签中的文本。

id 是您想要输出的新闻 ID 列表,使用逗号分隔且不带空格。您还可以用短横线指定新闻 ID 范围。例如 1,4-8,11 将输出 ID 为 1、4 到 8 以及 11 的新闻。

idexclude 与参数 id="新闻 id 列表" 完全相反,它允许输出不属于参数中指定 id 的新闻。例如,{custom idexclude="5-10"} 将输出所有 ID 不在 5 到 10 范围内的新闻。

category 是执行新闻筛选的分类 ID 列表,使用逗号分隔且不带空格。您还可以用短横线指定分类范围。例如 1,4-8,11 将输出来自分类 1、4 到 8 以及 11 的新闻。

categoryexclude 与参数 category="分类列表" 完全相反,它允许输出不属于参数中指定分类的新闻。例如,{custom categoryexclude="2,7"} 将输出所有不属于 ID 为 2 和 7 分类的新闻。

subcat 指定在筛选时是否还要包含位于子分类中的发布内容。该参数可取以下值:subcat="yes" 表示还要选择位于指定分类子分类中的所有发布内容;subcat="only" 表示仅选择子分类中的发布内容,而不考虑指定分类本身。例如,您的网站上有 ID 为 1、2 和 3 的分类,其中 2 和 3 是 1 的子分类。使用标签 {custom category="1" subcat="yes"} 时,将选出来自分类 1、2 和 3 的所有新闻;而使用 {custom category="1" subcat="only"} 时,则只会选出来自分类 2 和 3 的发布内容。

tags 是分配给新闻的标签云关键词列表。例如标签 {custom tags="新闻,模板"} 将输出所有包含标签云关键词“新闻”和“模板”的新闻。

template 是输出新闻时将使用的模板文件,在此情况下它将是 custom.tpl。如果您的网站使用多个模板,则该文件必须存在于每个模板中。在该模板中使用的标签与简短新闻模板中的标签类似。

available 用于确定请求的新闻将在哪个网站分区中输出,可取以下值:

main - 在首页
date - 在查看特定日期的新闻时
cat - 在查看分类时
showfull - 在查看完整新闻时
search - 在查看搜索结果时
xfsearch - 在查看包含特定附加字段的新闻时
userinfo - 在查看个人资料时
register - 在注册时
stats - 在查看统计时
pm - 在查看私信时
feedback - 在查看反馈时
favorites - 在查看书签时
newposts - 在查看新消息时
addnews - 在添加新闻时
lastnews - 在查看网站最新新闻时
lastcomments - 在查看最新评论时
lostpassword - 在恢复网站账户密码时
static - 在查看静态页面时
catalog - 在查看页面目录时
alltags - 在查看标签云时
tags - 在查看标签云中的新闻时
allnews - 在查看网站上的所有新闻或某个用户的所有新闻时

您可以使用 "|" 来组合分区,例如 available="userinfo|register|main" 将在首页、注册页面以及查看用户资料时输出您的新闻。如果需要在网站所有分区中显示,则无需指定此参数。

from 输出开始的新闻编号

limit 将输出的新闻数量

order 新闻排序条件,可取以下值:

date - 按发布日期排序新闻
editdate - 按编辑日期排序新闻
rating - 按评分排序新闻
reads - 按浏览次数排序新闻
comments - 按评论数量排序新闻
title - 按新闻标题排序新闻
rand - 随机排序新闻
id_as_list - 按发布 ID 列表中指定的顺序排序发布内容。例如,标签 {custom id="3,4,1,2" order="id_as_list"} 将先输出 ID 为 3 的新闻,然后是 4、1、2。
lastviewed - 输出用户最近查看的发布内容

sort 指定发布内容的排序顺序。使用 desc 时按降序排序,使用 asc 时按升序排序。

author 为新闻作者的登录名。指定该参数后,仅会输出指定作者的新闻。允许用逗号列出多个作者。例如,标签 {custom author="admin" limit="5"} 将输出登录名为 “admin” 的作者的 5 条新闻。

authorexclude 指定需要从显示中排除的作者登录名。该参数中的作者登录名也可以用逗号列出。例如,使用 {custom authorexclude="admin,test"} 时,将输出除登录名为 “admin” 和 “test” 的作者之外的所有作者的新闻。

catalog 输出所有包含参数中指定符号码的发布内容。也允许在参数中用逗号列出多个符号码。例如,使用 {custom catalog="甲,乙"} 时,将输出包含符号码 “甲” 或 “乙” 的新闻。

catalogexclude 输出所有不包含参数中指定符号码的发布内容。也允许在参数中用逗号列出多个符号码。例如,使用 {custom catalogexclude="甲,乙"} 时,将输出不包含符号码 “甲” 和 “乙” 的新闻。

xfields 输出所有包含参数中指定附加字段值的发布内容。也允许在参数中用逗号列出多个值。例如,使用 {custom xfields="值 1,值 2"} 时,将输出附加字段中包含“值 1”或“值 2”的新闻。

xfieldsexclude 输出所有不包含参数中指定新闻附加字段值的发布内容。也允许在参数中用逗号列出多个值。例如,使用 {custom xfieldsexclude="值 1,值 2"} 时,将输出附加字段中不包含“值 1”和“值 2”的新闻。

days 指定时间范围,其值表示输出发布内容的天数。例如,标签 {custom days="2" limit="5"} 将输出最近 2 天内的 5 条新闻。

banners 取值为 yesno。该参数用于开启或关闭分配为在发布内容之间输出的广告材料显示。默认情况下,如果标签中未指定该参数,则发布内容之间的广告材料输出将被禁用。

futureannounce 取值为 yesno。该参数与 days="X" 参数配合使用,表示应从未来日期中提取发布内容。例如,标签 {custom futureannounce="yes" days="1"} 表示需要输出发布日期设定在明天的发布内容,即 +1 天;而标签 {custom futureannounce="yes" days="2"} 则会输出发布日期设定在明天和后天的发布内容,依此类推。该参数对想在自己网站上输出即将到来的公告的站长会很有用。

cache 取值为 yesno,用于设置是否缓存输出。建议启用缓存以降低负载。您还可以指定以分钟、小时或天为单位的缓存周期。缓存时间通过带后缀 “m”、“h” 和 “d” 的值来设置。例如,如果您指定 {custom cache="30m" ….} ,则该区块将被强制缓存 30 分钟;如果指定 {custom cache="2h" ….} ,则将缓存 2 小时;如果指定 {custom cache="1d" ….},则将缓存 1 天。

navigation 取值为 yesno,用于设置是否使用分页导航输出。导航仅会在支持 {content} 标签分页的网站页面上输出,例如首页、分类页面等。如果页面本身不支持导航,例如完整新闻页面或静态页面,则无论指定什么值,该标签的导航都会自动被禁用。

fixed 取值为 yes、no、only 或 without,用于设置在输出发布内容时是否考虑新闻是否已置顶。如果指定 yes,置顶新闻会显示在最前面;如果指定 no,置顶新闻会像普通新闻一样在总列表中输出,而不考虑该参数。若指定 only,则只输出置顶新闻;若指定 without,则完全不输出置顶新闻。

sortbyuser="yes" 只接受这一种值,并允许对此发布区块使用用户自定义排序 [sort]{sort}[/sort]

unique="yes" 只接受这一种值,并表示如果这些发布内容已经在网站上输出过,则它们不应在该区块中重复出现,也就是说,该区块中应输出唯一的发布内容。这有助于避免在自定义发布输出区块中重复显示符合相同输出条件的同一新闻。例如,两个标签 {custom category="1" unique="yes" limit="1"}{custom category="1" unique="yes" limit="1"} 会输出不同的发布内容,尽管参数相同:第一个标签会输出该分类中的第一条新闻,第二个则会跳过第一条并输出第二条。如果某个发布内容已经在 {content} 区块中输出,那么在 {custom ….} 标签中启用此选项时,它同样不会再次输出。

favorites="yes" 仅接受这一种值,并会输出访客书签中的发布内容。例如,标签 {custom favorites="yes" order="id_as_list"} 会按照用户添加到书签中的顺序输出书签中的发布内容。

注意,标签 {custom ...} 的所有参数都不是必需的,至少只需指定任意一个参数即可。其余参数如果未指定,将从脚本的通用设置中获取。

例如:

{custom id="1,2" order="date"} - 输出 ID 为 1 和 2 的新闻,并按日期排序

{custom category="2,7" from="5" cache="yes"} - 输出来自分类 2 和 7 的新闻,新闻数量将取自脚本设置,筛选将从满足该条件的第 6 条新闻之后开始

{custom order="date" from="9" limit="5"} - 从第 10 条新闻开始输出最近的 5 条新闻

请记住,每次使用该标签都会给数据库带来额外负载,因为会执行额外查询。因此,如果需要节省资源,请谨慎使用。

全局标签 [available=版块] 文本 [/available], 会在查看指定网站分区时输出标签中的文本:

该标签接受与 {custom} 标签中的 available 参数相同的所有参数。您可以使用 "|" 来组合分区,例如 userinfo|register|main

例如:

[available=userinfo|register|main]
    将在首页、注册时以及查看用户资料时显示的区块
[/available]

该标签会在首页、注册时以及查看用户资料时输出标签中的文本。

您还可以使用标签 [not-available=userinfo|register|main] 文本 [/not-available],它与 [available=...] 标签完全相反,会在除列出的分区之外的所有位置输出文本。

标签 [category=X] 文本 [/category], 会在查看指定分类时输出标签中的文本:

该标签以分类 ID 作为参数,允许用逗号列出多个分类,也允许通过短横线指定范围:

[category=1,2,3,7-10]
    文本
[/category]

如果访客正在查看 ID 为 1、2、3 或 7 到 10 的分类,则会输出标签中的文本。

您还可以使用标签 [not-category=1,2,3,7-10] 文本 [/not-category],它与 [category=...] 标签完全相反,会在除列出分类之外的所有位置输出文本。

标签 [group=X] 文本 [/group], 会在用户属于指定用户组时输出标签中的文本:

该标签以组 ID 作为参数,并允许列出多个组

[group=1,2,3]
    文本
[/group]

如果访客是管理员、主编或记者,则输出标签中的文本。

您还可以使用标签 [not-group=1,2,3] 文本 [/not-group],它与 [group=...] 标签完全相反,会为除列出的组之外的所有人输出文本。

[country=X] 文本 [/country]

如果访客位于指定的 X 国家,则输出其中指定的文本,其中 X 为国家的 ISO 代码列表。国家可以用逗号列出。例如,标签 [country=RU, BY, KZ] 文本 [/country] 会在访客来自俄罗斯、白俄罗斯或哈萨克斯坦时输出文本。

[not-country=X] 文本 [/not-country]

如果访客不位于指定的 X 国家,则输出其中指定的文本,其中 X 为国家的 ISO 代码列表。例如,[not-country=RU, BY, KZ] 文本 [/not-country] 会在访客不是来自俄罗斯、白俄罗斯或哈萨克斯坦,而是来自任何其他国家时输出文本。

{country}

将输出网站访客所在国家的 ISO 代码,例如,如果访客位于俄罗斯则输出 RU,如果位于美国则输出 US。

[page-count=1,2,3] 文本 [/page-count]

如果用户位于新闻导航中的指定页码,则会输出其中包含的文本,而不取决于网站分区,其中 1,2,3 为导航中的页码。该标签可非常灵活地配置某些信息在特定页面上的显示,对信息块和广告尤其有用。您可以将该标签与其他用于确定网站分区和分类的标签一起使用。

例如,以下标签组合:

[available=cat]
    [category=1]
       [page-count=1] 
           文本
       [/page-count]
   [/category]
[/available]

只有当用户正在查看 ID 为 1 的分类的第一页,并且查看的正是简短新闻时,才会输出该文本;如果切换到该分类中的其他页面,则该文本将不会再显示。

[not-page-count=1,2,3] 文本 [/not-page-count]

在除标签中指定页码之外的任何页面编号上输出标签中的文本。

{banner_名称} 此标签用于在网站上输出广告信息。横幅名称在管理面板的专用模块中设置。

[banner_名称] 文本 [/banner_名称] 如果指定横幅在网站页面上输出,则输出其中包含的文本。

{inform_名称} 此标签用于输出 RSS 信息源和其他网站的新闻。该标签的名称和所有设置都在脚本的管理面板中配置。

[static=页面名称] 文本 [/static]

如果访客正在查看具有指定名称的静态页面,则会输出标签中的文本。也允许在标签中用逗号列出多个页面。例如 [static=test1,test2,test3] 文本 [/static] 将在页面 test1、test2 和 test3 上输出文本

[not-static=页面名称] 文本 [/not-static]

如果访客没有查看指定名称的静态页面,则会输出标签中的文本。也允许在标签中通过逗号列出多个页面。

[smartphone] 文本 [/smartphone]

如果访客通过手机查看您的网站,则会输出标签中的文本。

[not-smartphone] 文本 [/not-smartphone]

如果访客不是通过手机查看您的网站,则会输出标签中的文本。

[tablet] 文本 [/tablet]

如果访客通过平板设备查看您的网站,则会输出标签中的文本。

[not-tablet] 文本 [/not-tablet]

如果访客不是通过平板设备查看您的网站,则会输出标签中的文本。

[desktop] 文本 [/desktop]

如果访客通过台式机或笔记本查看您的网站,则会输出标签中的文本。

[not-desktop] 文本 [/not-desktop]

如果访客不是通过台式机或笔记本查看您的网站,则会输出标签中的文本。

[ios] 文本 [/ios]

如果网站访客的设备使用 Apple 的 iOS 操作系统,则会输出其中包含的文本

[not-ios] 文本 [/not-ios]

如果网站访客的设备不使用 iOS 操作系统,则会输出其中包含的文本

[android] 文本 [/android]

如果网站访客的设备使用 Google 的 Android 操作系统,则会输出其中包含的文本

[not-android] 文本 [/not-android]

如果网站访客的设备不使用 Android 操作系统,则会输出其中包含的文本

此外,您还可以使用标签 {include file="my_block.tpl"} 将一个模板连接到另一个模板中。该标签会将指定的 my_block.tpl 文件连接到模板中。如果使用了包含大量标签的复杂布局,该标签有助于简化模板结构。

{customcomments name="X" id="1,2,5-8" category="2,3,5-8" author="x" days="x" template="custom" available="global" from="0" limit="10" order="date" sort="desc" cache="yes"}

以自定义格式在网站任意位置输出评论。该标签是评论的附加辅助输出,例如可用于在网站首页的某个区块中输出最新评论等。

该标签可接受以下参数:

name 是区块名称,之后可用于判断在该区块有内容或没有内容时,是否需要在区块外显示或隐藏某些内容。例如,写成 {customcomments name="block1" category="6"} 时,会显示 ID 为 6 的分类中的评论,而该区块本身会获得名称 "block1"。针对这个名称可使用以下标签:[customcomments=X] 文本 [/customcomments],其中 X 为区块名称;如果具有该名称的区块中包含信息,则输出其中包含的文本。也增加了相反的标签 [not-customcomments=X] 文本 [/not-customcomments],如果具有该名称的区块不包含任何信息且没有评论,则输出其中包含的文本。这样您就可以根据区块中是否有发布内容来添加额外的外部样式,或者将其隐藏。例如,[customcomments=block1] 标题 {customcomments name="block1" category="6"} [/customcomments]。同时,区块本身可以位于页面上的任何位置,并不一定要放在这些标签内部。这样您就可以根据这些标签来适配和改变模板中的其他外观。您还可以在参数中同时指定多个区块,并决定按什么条件检查区块是否存在。您既可以检查所有区块是否都存在,也可以只检查列出的任意一个是否存在。若通过逗号列出区块 [customcomments=block1,block2,block3] 文本 [/customcomments],则会检查这三个 customcomments 区块是否全部存在,且只有三者都存在时标签才会输出文本;若通过符号 | 列出区块 [customcomments=block1|block2|block3] 文本 [/customcomments],则只要这三个区块中的任意一个存在,就足以输出标签中的文本。

id - 您想要输出的评论 ID 列表,使用逗号分隔且不带空格。您还可以用短横线指定评论 ID 范围。例如,1,4-8,11 将输出 ID 为 1、4 到 8 以及 11 的评论。

newsid - 您想要输出其评论的新闻 ID 列表,使用逗号分隔且不带空格。您还可以用短横线指定新闻 ID 范围。例如,1,4-8,11 将输出来自 ID 为 1、4 到 8 以及 11 的发布内容中的评论。

newsidexclude - 您不希望输出其评论的新闻 ID 列表,使用逗号分隔且不带空格。您还可以用短横线指定新闻 ID 范围。例如,1,4-8,11 将输出除 ID 为 1、4 到 8 以及 11 的发布内容之外所有发布内容中的评论。

category - 执行评论筛选的新闻分类 ID 列表,使用逗号分隔且不带空格。您还可以用短横线指定分类范围。例如 1,4-8,11 将输出来自分类 1、4 到 8 以及 11 的评论。

categoryexclude - 与参数 category="分类列表" 完全相反,它允许输出其新闻不属于参数中指定分类的评论。例如,{customcomments categoryexclude="2,7"} 将输出其新闻不属于 ID 为 2 和 7 分类的所有评论。

author - 指定评论作者的登录名。指定该参数后,仅会输出指定作者的评论。允许用逗号列出多个作者。例如,标签 {customcomments author="admin" limit="5"} 将输出登录名为 “admin” 的作者的 5 条评论。

authorexclude - 指定需要从显示中排除的作者登录名。该参数中的作者登录名也可以用逗号列出。例如,使用 {customcomments authorexclude="admin,test"} 时,将输出除登录名为 “admin” 和 “test” 的作者之外的所有作者的评论。

days - 指定时间范围,其中 x 为输出评论的天数。例如,标签 {customcomments days="2" limit="5"} 将输出最近 2 天内的 5 条评论。

template - 输出评论时将使用的模板文件,在本例中为 custom.tpl。如果您的网站使用多个模板,则该文件必须存在于每个模板中。在此模板中使用的标签与评论输出模板 (comments.tpl) 中使用的标签类似。

available 为输出所请求评论的网站分区,可接受与 {custom ...} 标签中同名参数相同的所有值。您可以使用 "|" 来组合分区,例如 available="userinfo|register|main" 将在首页、注册时以及查看用户资料时输出您的新闻。

from - 指定输出开始的评论编号。评论编号从零开始。例如,如果您想跳过第一个符合条件的评论,则应指定 from="1"

limit - 指定将输出的评论数量。

order - 指定评论的排序条件,可取以下值:

date - 按日期排序评论,例如标签 {customcomments order="date" limit="5"} 将输出最近的五条评论。

rating - 按评分排序评论,例如标签 {customcomments order="rating" limit="5"} 将输出评分最高的五条评论。

rand - 随机排序评论,例如标签 {customcomments order="rand" limit="5"} 将随机输出五条评论。

id_as_list - 按发布 ID 列表中指定的顺序排序发布内容。例如,标签 {custom id="3,4,1,2" order="id_as_list"} 将先输出 ID 为 3 的新闻,然后是 4、1、2。

sort - 指定评论的排序顺序。使用 desc 时按降序排序,使用 asc 时按升序排序。

cache - 接受 yes 或 no,指定是否缓存输出。我们建议对该类输出区块启用缓存,以降低服务器负载。您还可以指定以分钟、小时或天为单位的缓存周期。缓存时间通过带后缀 “m”、“h” 和 “d” 的值来设置。例如,如果您指定 {customcomments cache="30m" ….},则评论区块将被强制缓存 30 分钟;如果指定 {customcomments cache="2h" ….},则评论区块将缓存 2 小时;如果指定 {customcomments cache="1d" ….},则评论区块将缓存 1 天。

该标签的所有参数都不是必需的。只需指定任意一个参数即可。您也可以按自己的需要组合该标签的不同参数。

{* 注释掉的代码 *}

该标签用于注释代码,所有位于 "{*" 和 "*}" 之间的内容都会从模板中删除,因此不会在网站输出时出现。此类标签对模板开发人员很有用,例如在调试某个功能、需要临时注释掉某段功能时。该标签是全局标签,可在所有模板中使用。

{lang text="LANG_PARAMETER"}

该标签用于输出当前所用语言文件 website.tpl 中的信息,其中 LANG_PARAMETER 为需要输出的参数值。例如,标签 {lang text="attach_images"} 在使用俄语时会输出语言包中的 "附加图像",而在使用英语时则会输出 “Attach Images”

要输出分类菜单,可使用标签 {catmenu}。您可以在任何模板文件中使用该标签,它是全局的。该标签会使用并连接模板文件 categorymenu.tpl

{catmenu id="1,2,3-5" idexclude="1,2,3-5" subcat="yes" template="custom" cache="yes"}

以自定义格式输出分类菜单,其中:

id="1,2,3-5" - 需要在菜单中输出的分类 ID 列表。您可以用逗号列出多个分类,也可以通过短横线指定 ID 范围。

idexclude="1,2,3-5" - 不需要包含在分类列表中的分类 ID 列表,将输出除这些分类之外的所有分类。您可以用逗号列出多个分类,也可以通过短横线指定 ID 范围。

subcat="yes" - 该参数接受 "yes"、"no" 或 "only",并与该标签的 id 参数一起使用,用于指定是否需要自动连接指定分类列表的子分类。例如,若存在 ID 为 1 的分类,而其子分类的 ID 为 2 和 3,则使用标签 {catmenu id="1" subcat="yes"} 时,将输出分类 1 及其子分类 2 和 3;而使用标签 {catmenu id="1" subcat="no"} 时,则只输出 ID 为 1 的分类。值 "only" 表示仅输出指定分类中的子分类。例如,使用标签 {catmenu id="1" subcat="only"} 时,只会输出属于 ID 为 "1" 分类的子分类。又例如,借助简单结构 [available=cat] {catmenu id="{category-id}" subcat="only"} [/available],您可以自动输出网站上当前查看分类的子分类列表。

template="custom" - 指定用于生成菜单的模板名称,以替代标准的 categorymenu.tpl

cache="yes" - 该参数接受 "yes" 或 "no",用于指定是否缓存该区块。启用缓存后,将自动失去通过模板中的标签 [active] 文本 [/active] 控制当前活动分类高亮的能力。

{catnewscount id="X"}

输出指定分类的发布数量,其中 X 为所需分类的 ID。该标签对于在网站模板中手动构建的菜单里显示发布数量非常有用。

{category-id}

输出访客当前查看的网站分类 ID。此标签在组织网站菜单时非常有用,也适用于在设计发布输出模板时需要快速重新指定某些 CSS 类或模板文件名称的情况。

{category-title}

输出访客当前查看的网站分类名称。当网站需要单独显示当前查看分类名称时,此标签会很有用。

{category-description}

当用户查看该分类时,输出为该分类设置的描述;在输出完整发布内容时同样可用。

[category-description] 文本 [/category-description]

如果当前查看的分类具有已设置的分类描述,则输出其中包含的文本

[not-category-description] 文本 [/not-category-description]

如果分类没有描述,则输出其中包含的文本。

{category-icon}

输出用户当前查看的分类图标;如果查看的是完整新闻,则输出该新闻所属分类的图标

{category-url}

输出当前查看分类的 URL

{page-title}

输出您在“标题、描述、meta 标签”部分中为页面指定的标题

{page-description}

输出您在“标题、描述、meta 标签”部分中为页面指定的描述

{page-count}

输出用户当前所在的页码

[script] 代码 [/script] 是全局标签,允许放置可执行的 JavaScript 代码。该代码会直接放入 DataLife Engine 其他 JS 脚本的执行块中,并在其他通过连接方式使用的 JS 脚本加载完成后立即执行。这样您就可以整理模板中的所有 JS 代码,标准化其执行顺序,并在今后避免某些冲突。标签使用示例:

[script]
$.get("{THEME}/images/sprite.svg", function(data) {
  var div = document.createElement("div");
  div.innerHTML = new XMLSerializer().serializeToString(data.documentElement);
  document.body.insertBefore(div, document.body.childNodes[0]);
});
[/script]

{cache-id}

输出当前有效的缓存 ID

[active-plugins=X] 文本 [/active-plugins]

如果指定插件已启用并在网站上使用,则输出其中包含的文本。其中 X 为插件 ID 或其名称。例如,您可以指定 [active-plugins=1] 文本 [/active-plugins],或 [active-plugins=我的插件] 文本 [/active-plugins];如果 ID 为 1 的插件或名为 “我的插件” 的插件已在系统中启用,则标签中的文本将被输出。您还可以在标签中通过逗号列出多个参数,例如 [active-plugins=1,2,5] 文本 [/active-plugins]

[not-active-plugins=X] 文本 [/not-active-plugins]

如果指定插件已关闭且未在网站上使用,则输出其中包含的文本。其中 X 为插件 ID 或其名称。例如,您可以指定 [not-active-plugins=1] 文本 [/not-active-plugins],或 [not-active-plugins=我的插件] 文本 [/not-active-plugins];如果 ID 为 1 的插件或名为 “我的插件” 的插件在系统中已关闭且未被使用,则标签中的文本将被输出。您还可以在标签中通过逗号列出多个参数,例如 [not-active-plugins=1,2,5] 文本 [/not-active-plugins]

在 main.tpl 模板中输出用户资料数据:

{profile-link} - 输出用户资料链接

{profile-login} - 输出用户登录名

{ip} - 输出用户 IP

{foto} - 输出用户头像链接

{fullname} - 输出用户全名

[fullname] 文本 [/fullname] - 如果用户资料中填写了全名,则输出标签中的文本

{land} - 输出用户所在国家

[land] 文本 [/land] - 如果用户资料中填写了国家,则输出标签中的文本

{mail} - 输出用户的 E-mail 地址

{group} - 输出用户组

{registration} - 输出用户注册日期

{lastdate} - 输出用户最后访问日期

{group-icon} - 输出用户组图标

{time_limit} - 如果该用户组为临时组,则输出用户处于该组的截止日期

[time_limit] 文本 [/time_limit] - 如果用户属于临时用户组,则输出标签中的文本

{comm-num} - 输出用户的评论数量

{comments} - 输出用户评论链接地址

[comm-num] 文本 [/comm-num] - 如果用户在网站上有评论,则输出标签中的文本

[not-comm-num] 文本 [/not-comm-num] - 如果用户在网站上没有评论,则输出标签中的文本

{news} - 输出用户新闻链接地址

{rss} - 输出用户新闻 RSS 链接地址

{news-num} - 输出用户的新闻数量

[news-num] 文本 [/news-num] - 如果用户在网站上有新闻,则输出标签中的文本

[not-news-num] 文本 [/not-news-num] - 如果用户在网站上没有新闻,则输出标签中的文本

{new-pm} - 输出用户未读私信数量

{all-pm} - 输出用户私信总数

{favorite-count} - 输出用户书签中的发布内容总数

[profile_xfvalue_X] - 从其资料中输出名为 "X" 的附加字段值

[profile_xfgiven_X] 文本 [/profile_xfgiven_X] - 如果其资料中填写了名为 "X" 的附加字段,则输出标签中的文本

[profile_xfnotgiven_X] 文本 [/profile_xfnotgiven_X] - 如果其资料中未填写名为 "X" 的附加字段,则输出标签中的文本

{admin-link} - 如果用户有权限访问管理面板,则输出管理面板链接

[admin-link] 文本 [/admin-link] - 如果用户有权访问管理面板,则输出标签中的文本