模板文件的使用类似 Django 模板引擎的标签标记,变量则使用双花括号来定义,如 {{变量}}
。条件判断、循环控制等标签,使用单花括号和百分号来定义,并且需要用结束标签来结束,标签成对出现,如 {% if archive.Id == 10 %}这是文档ID为10的文档{% endif %}
。
系统内置的常用标签有 38 种:
- 系统设置标签
system
使用方法:{% system 变量名称 with name="字段名称" %}
- 联系方式标签
contact
使用方法:{% contact 变量名称 with name="字段名称" %}
- 万能TDK标签
tdk
使用方法:{% tdk 变量名称 with name="字段名称" %}
- 导航列表标签
navList
使用方法: {% navList navs %}...{% endnavList %}
- 面包屑导航标签
breadcrumb
使用方法:{% breadcrumb crumbs with index="首页" title=true %}...{% endbreadcrumb %}
- 分类列表标签
categoryList
使用方法:{% categoryList categories with type="1" parentId="0" %}...{% endcategoryList %}
- 分类详情标签
categoryDetail
使用方法:{% categoryDetail with name="变量名称" %}
- 单页面列表标签
pageList
使用方法:{% pageList pages %}...{% endpageList %}
- 单页面详情标签
pageDetail
使用方法:{% pageDetail with name="变量名称" %}
- 文档列表标签
archiveList
使用方法:{% archiveList 变量名称 with categoryId="1" moduleId=1 order="id desc|views desc" type="page|list" %}...{% endarchiveList %}
- 文档详情标签
archiveDetail
使用方法:{% archiveDetail with name="变量名称" %}
- 上一篇文档标签
prevArchive
使用方法:{% prevArchive prev %}...{% endprevArchive %}
- 下一篇文档标签
nextArchive
使用方法:{% nextArchive next %}...{% endnextArchive %}
- 相关文档标签
archiveList
使用方法参看文档列表标签:{% archiveList archiveRelations with type="related" %}...{% endarchiveList %}
- 文档参数标签
archiveParams
{% archiveParams params with sorted=true %}...{% endarchiveParams %}
- 文档参数筛选标签
archiveFilters
使用方法:{% archiveFilters params with moduleId=1 allText="全部" %}...{% endarchiveFilters %}
- 文档Tag列表标签
tagList
使用方法:{% tagList tags with type="1" limit="10" %}...{% endtagList %}
- Tag详情标签
tagDetail
使用方法:{% tagDetail with name="变量名称" %}
- Tag文档列表标签
tagDataList
使用方法:{% tagDataList archives with tagId="1" %}...{% endtagDataList %}
- 评论列表标签
commentList
使用方法:{% commentList comments with itemType="archive" itemId="1" type="page" %}...{% endcommentList %}
- 留言表单标签
guestbook
使用方法:{% guestbook fields %}...{% endguestbook %}
- 友情链接标签
linkList
使用方法:{% linkList friendLinks %}...{% endlinkList %}
- 分页标签
pagination
使用方法:{% pagination pages with show="5" %}...{% endpagination %}
- if逻辑判断标签
if else endif
使用方法:{% if 条件 %} ... {% elif 其他条件 %} ... {% else %} ... {% endif %}
- for循环遍历标签
for empty endfor
使用方法:{% for item in archives %}...{% empty %}...{% endfor %}
- 格式化时间戳标签
stampToDate
使用方法:{{stampToDate(时间戳, "格式")}}。时间戳为10位的时间,如 1609470335,格式为Golang支持的格式。
- 定义变量赋值标签
with
使用方法:{% with title="这是声明给header使用的title" keywords="这是声明给header使用的keywords" %} %}标题:{{title}},关键词:{{keywords}}
- 其他辅助标签
tags
使用方法:include、extends、macro、lorem
- 更多过滤器
filters
使用方法:{{obj|filter__name:param}}