ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 文档/文档列表 ## 文档详情信息 cms:archives 文档详情标签仅用于文档详情展示页,不适用于其它页面。 ### 使用范围 文档详情页 ### 标签参数 | 名称 | 介绍 | 必选 | | --- | --- | --- | | name | 文章表cms\_archives字段名称或副表自定义字段 | 否 | ### 调用示例 ~~~scss //显示文档查看次数 {cms:archives name="views" /} //显示文档标题 {cms:archives name="title" /} ~~~ ### 温馨提示 如果文档详情标签不能满足你的需求,你可以直接在文档详情页面使用`{$__ARCHIVES__.title}`的形式来调用文章的相关信息,比如我们需要判断`{if $__ARCHIVES__.comments>0}评论大于0{/if}`,比如我们可以时间函数处理字段`{$__ARCHIVES__.createtime|datetime}`。 ## 文档列表 cms:arclist ### 使用范围 全局 ### 标签参数 所有公共参数及以下特有参数 | 名称 | 介绍 | 必选 | 说明 | | --- | --- | --- | --- | | id | 列表循环变量 | 是 | 无 | | empty | 数列为空时显示的数据 | 否 | 无 | | key | 列表循环键名变量,默认为`i` | 否 | 无 | | mod | 取模值,常用于控制换行,默认为2 | 否 | 无 | | row | 筛选的行数,默认为`10` | 否 | 无 | | orderby | 排序字段,支持一个字段或多个字段,如:`views`或`views desc,id desc` | 否 | 默认为`weigh`权重排序,权重相同的情况下再按`publishtime DESC`进行排序 | | orderway | 排序方式,支持`desc`降序和`asc`升序 | 否 | 默认为`desc` | | limit | 筛选的`行数`或`偏移值,行数`,优先使用`row`配置 | 否 | 无 | | cache | 缓存标识,也可以是缓存时长(秒),默认始终缓存,如果不希望缓存请置为-1,0表示永久缓存 | 否 | 无 | | type | 类型 | 否 | 支持`son`和`sons`,分别表示栏目下一级子类和栏目所有子类。两个值必须配合`channel`参数使用 | | model | 模型ID | 否 | 无 | | channel | 栏目ID或栏目ID集合 | 否 | 无 | | tags | 标签 | 否 | 无 | | addon | 副表字段集 | 否 | 如果为`true`则表示所有副表字段(不含`content`),多个字段以,进行分隔。此参数必须和`model`或`channel`配合使用。如果要调用`content`字段,必须使用`addon="id,content"`来调用 | | with | 关联查询 | 否 | 用于关联查询,默认为`channel`,支持`channel`和`user`组合 | | field | 调用字段 | 否 | 默认为全部 | | flag | 标志 | 否 | 目前总共有`hot=热门,new=New,recommend=推荐,top=置顶`这几个值,增删改可以在后台站点配置中自定义,与条件可以使用`&`,或条件可以使用半角的竖线 | | condition | 自定义条件过滤 | 否 | 可追加使用SQL筛选,请参考文档:自定义过滤条件 | | paginate | 数据分页 | 否 | 请参考文档:分页标签 | ### 调用示例 ~~~php {cms:arclist id="item" row="8" orderby="id" orderway="desc"} //这里面可以调用cms_archives表的所有字段数据,如果启用了addon属性还可以调用副表数据 {$item.title} {$item.image} {$item.keywords} //是否有预览图 {$item.hasimage} //文档组合链接 {$item.textlink} //文档链接 {$item.url} //栏目组合链接 {$item.channellink} //图片组合链接 {$item.imglink} //图片HTML {$item.img} //获取所属发布者的相关信息,具体可以使用的字段为fa_user表的字段,调用时建议配合`with="user,channel"`属性来调用 {$item.user.nickname} //获取所属栏目的相关信息,具体可以使用的字段请参考fa_channel表的字段 {$item.channel.url} {/cms:arclist} //调用当前栏目下的文档 {cms:arclist id="item" row="8" orderby="id" orderway="desc" channel="__CHANNEL__.id"} //这里面可以调用cms_archives表的所有字段数据,如果启用了addon属性还可以调用副表数据 {/cms:arclist} //调用关联指定标志的下的文档 {cms:arclist id="item" row="8" orderby="id" orderway="desc" flag="hot"} //这里面可以调用cms_archives表的所有字段数据,如果启用了addon属性还可以调用副表数据 {/cms:arclist} //调用指定模型的主表和副表数据 {cms:arclist id="item" model="1" row="8" orderby="id" orderway="desc" addon="true"} //这里面可以调用cms_archives表的所有字段数据,还可以调用模型为1的副表的数据 {/cms:arclist} //调用并筛选指定副表的查询条件的文档 {cms:arclist id="item" model="1" row="8" orderby="id" orderway="desc" addon="true" condition="'test' = `author`"} //这里面可以调用cms_archives表的所有字段数据,还可以调用模型为1的副表的数据,同时根据模型对应的副表中的字段名(author)进行条件筛选值为`test`的数据 {/cms:arclist} //分页展示 {cms:arclist id="item" row="8" orderby="id" orderway="desc" paginate="10"} //这里面可以调用cms_archives表的所有字段数据,如果启用了addon属性还可以调用副表数据 {/cms:arclist} {$__LIST__->render()} ~~~ ### 调用副表 如果需要在`arclist`调用副表字段的内容,必须配合`model`或`channel`属性才能完成调用,比如 ~~~bash //这里的true表示可调用副表所有字段 {cms:arclist id="item" row="8" model="1" addon="true"} {$item.副表字段名} {/cms:arclist} //也可指定一个或多个副表字段 {cms:arclist id="item" row="8" model="1" addon="author"} {$item.author} {/cms:arclist} //配合栏目ID来调用 {cms:arclist id="item" row="8" channel="4,5,6" addon="author"} {$item.author} {/cms:arclist} //筛选副表指定字段条件 {cms:arclist id="item" row="8" model="1" addon="author" condition="`n`.`author`='Github'"} {$item.author} {/cms:arclist} ~~~ ## 上下页标签 cms:prevnext 用于调用当前文档的上下篇文章 ### 使用范围 文档详情页 ### 标签参数 | 名称 | 介绍 | 必选 | | --- | --- | --- | | id | 变量名 | 是 | | type | `prev`\=上一篇,`next`\=下一篇 | 否 | | archives | 文档的ID | 否 | | channel | 栏目的ID | 否 | ### 调用示例 ~~~bash //调用上一篇文章 {cms:prevnext id="prev" type="prev" archives="__ARCHIVES__.id" channel="__CHANNEL__.id"} //文章URL {$prev.url} //文章标题 {$prev.title} {/cms:prevnext} //调用下一篇文章 {cms:prevnext id="next" type="next" archives="__ARCHIVES__.id" channel="__CHANNEL__.id"} //文章URL {$next.url} //文章标题 {$next.title} {/cms:prevnext} ~~~