章节导航
[TOC]
<br>
## 内容列表标签
查询模型数据列表、结合分页标签可实现分页、例如获取文章列表等可用该标签。
## 格式示例
~~~
// 获取模型ID为1的3条数据。
{hkcms:content model="1" num="3"}
<a href="{$item.url}">标题:{$item.title}</a>
{/hkcms:content}
~~~
## 参数
| 参数名称 | 可选值 | 默认值 | 是否必填 | 支持版本 | 说明 |
| --- | --- | --- | --- | --- | --- |
| catid | 栏目ID或变量,多个栏目使用英文逗号分隔,必须是同模型v2.2.3.220920+ | - | 在列表页可以不填,自动获取。 | - | 默认包含下级文章的内容 |
| model | - | - | - | - | 模型ID |
| aid | - | - | - | v2.2.3.220920+ | 指定单个文档ID |
| aids | 文档ID:1,2,3 | - | - | v2.2.3.220920+ | 指定多个文档ID,英文逗号分隔 |
|field| - | * | - | v2.2.3.221215+ | 指定显示的字段,默认是*表示所有,注意:系统已包含(id,lang,style,views,url,category_id,status)无需重复指定|
| order | | weigh asc,id desc | - | - | 排序 , 格式为 order="字段名称 desc" 其中desc是倒序,asc是升序|
| num | 格式为数字、变量、5,10 |10 | - | - | 限制结果数量;<br>5,10:第五条开始,获取10条数据 |
| where | - | - | - | - | 数据库查询条件 |
| page | 1 | - | - - | | 开启分页,配合 **{hkcms:contentpage /}** 分页标签 |
| insub | 1-包含下级,0-不包含下级 | 1 | - | - | 需要与catid同时使用,默认包含下级文章 |
| inlist | 1-列表模式,0-单页内容 | 0 | - | - | 针对单页,填写catid时,获取catid下级的所有单页,支持分页 |
| more | 1 | - | - | v2.2.3.220920+不在使用 | 获取副表的数据 |
| flag | - | - | - | - | 文档属性值|
| id | - | $item | - | - | 指定循环里的变量名,例如id='obj',模板调用如:{$item.title} 变成 {$obj.title} |
| empty | - | - | - | - | 为空的时候输出提示,支持传入html |
| cache | - | 3600秒 | - | - | 缓存时间,默认3600秒,对非分页数据有效 |
| mod | - | - | - | v2.2.1.20220603+ | 控制隔N行输出的内容等,更多查看下面的示例 |
| key | - | - | - | v2.2.1.20220603+ | 指定循环变量,如果没有指定key属性的话,默认使用循环变量$i |
| filter | 1/0 | 1 | - | v2.3.1.231108+ | 默认是开启筛选的(1开启,0关闭),关闭后不受filter筛选标签影响 |
## 参数说明
`catid` 栏目ID或变量,在列表页时可不填,自动获取列表页的内容数据
1. 获取属于栏目ID为**7**,数量为**6**条的文档
~~~
{hkcms:content catid="7" num="6"}
// style字段是后台内容管理标题加粗、标题颜色,如果需要那么按以下写法获取
<a href="{$item.url}" style="{$item.style}">标题:{$item.title}</a>
封面图:<img src="{$item.thumb}"> // 更多字段可前往后台字段管理里面或手册数据字典里面查看
{/hkcms:content}
~~~
2. 以变量形式获取,例如在列表页有当前栏目变量($Cate),`catid="$Cate.id" ` $Cate.id是栏目ID,下面示例为获取当前栏目6条文档并开启分页
~~~
// page="1" 是开启分页
{hkcms:content catid="$Cate.id" num="6" page="1"}
<h5><a href="{$item.url}">标题:{$item.title}</a></h5>
{/hkcms:content}
~~~
3. 在列表页,获取当前栏目的文档,可以不传`catid`参数,如下按每页6条分页展示
~~~
{hkcms:content num="6" page="1"}
<h5><a href="{$item.url}">{$item.title}</a></h5>
{/hkcms:content}
~~~
4. 同时获取多个栏目ID的文档数据,catid="栏目ID1,栏目id2" 多个栏目ID使用英文逗号分隔开
~~~
{hkcms:content catid="11,12" num="6"}
<a href="{$item.url}" style="{$item.style}">标题:{$item.title}</a>
{/hkcms:content}
~~~
`aid` 获取单条文章,如下获取文档ID为14的记录
~~~
{hkcms:content aid="14"}
<a href="{$item.url}" style="{$item.style}">标题:{$item.title}</a>
{/hkcms:content}
~~~
`aids` 获取多条文章,多个文档使用英文逗号分隔开
~~~
{hkcms:content aids="14,15"}
<a href="{$item.url}" style="{$item.style}">标题:{$item.title}</a>
{/hkcms:content}
~~~
`model`模型ID参数表示按模型id来获取记录,模型ID在模型管理里面可以看到
~~~
// 获取模型id为1的记录,num控制显示数量
{hkcms:content model="1" num="5"}
文档标题:{$item.title}
文档描述:{$item.description}
{/hkcms:content}
~~~
`order` 用于字段排序,格式为order="字段名 asc,字段名2 desc",其中`asc` 表示升序 `desc` 表示倒序,多个排序字段使用逗号分隔开
~~~
// 列表页,按最新发布的靠前排序
{hkcms:content order="publish_time desc"}
文档标题:{$item.title}
文档描述:{$item.description}
{/hkcms:content}
~~~
<br />
`num` 用于控制记录条数,`num="5"` 表示只获取5条记录。也可以控制从第几条开始,5,10表示第5~15条记录。**注意5,10格式不能用于分页上**
~~~
注意这种限制范围方式不得用于分页
{hkcms:content model="1" num="5,10"}
标题:{$item.title}
{/hkcms:content}
~~~
1. 动态控制每页展示文档条数可以在后台栏目管理里面配置(栏目管理-》添加-》更多-》分页大小)
![](https://img.kancloud.cn/83/1d/831d044ca1a66ff001694420cf6c3177_631x89.png)
动态文档条数写法示例,num="$Cate.num",$Cate.num是当前栏目的分页大小
```
{hkcms:content num="$Cate.num" page="1"}
// style字段是后台可设置加粗与颜色
<a href="{$item.url}" style="{$item.style}">标题:{$item.title}</a>
{/hkcms:content}
```
<br />
`where` 数据库查询条件,语法跟SQL where基本相同。格式:where="字段名 = 1" ,支持传入变量
~~~
{// 获取模型id为1的记录,where条件意思是只显示阅读量大于1的记录}
{hkcms:content model="1" where="views > 1"}
标题:{$item.title}
描述:{$item.description}
{/hkcms:content}
~~~
**sql语法可参考:https://www.w3school.com.cn/sql/sql_where.asp**
**更多查询表达式参考:https://www.kancloud.cn/manual/thinkphp6_0/1037537**
<br />
`page` 开启分页功能,默认是没有分页的,开启后配合`contentpage分页标签`来实现生成底部下的页码
~~~
{// page="1" 开启分页}
{hkcms:content model="1" page="1"}
标题:{$item.title}
{/hkcms:content}
~~~
`insub` 控制是否显示下级,该属性需要结合`catid`来使用,默认自动包含该栏目下的所有文档数据包含子级,值为1-包含下级,0-不包含下级。
~~~
// 不包括子级下的文档,注意获取的下级是跟当前栏目模型一致
{hkcms:content catid="1" insub="0"}
标题:{$item.title}
{/hkcms:content}
~~~
<blockquote class="danger"><p>注意:获取下级栏目的文档是跟caitid里面的栏目ID模型一致</p></blockquote>
<br />
`inlist` 列表模式用于获取多条单页模型的文章。例如catid="1"栏目ID为1是单页栏目,那么默认情况下获取的是一条单页内容,获取该单页下所有单页栏目里的文档则可以使用该参数。示例如下:
~~~
开启列表模式,获取当前栏目下5条单页列表
{hkcms:content catid="1" inlist="1" num="5"}
<div>
{hkcms:raw name="$item['content']" /}
</div>
{/hkcms:content}
~~~
`more` ~~用于开启列表页获取副表字段。模型管理里面字段管理可以看到字段是否是主表还是副表~~,**后续版本默认有副表字段无需手动开启**
~~~
开启副表访问
{hkcms:content model="1" more="1" num="5"}
副表内容:{$item.content}
{/hkcms:content}
~~~
`flag` 用于输出特定的文档属性,例如在文档属性里面新增了hot属性,那么写法如下
~~~
输出模型ID为1且文章带有hot属性的记录
{hkcms:content flag="hot" model="1" num="5"}
标题:{$item.title}
{/hkcms:content}
~~~
<span style="color:red">flag属性里面填写的是下面图片中的属性值</span>
![](https://img.kancloud.cn/2c/2c/2c2c2437caffcdf015cbf0f1c9f9316e_747x264.png)
1. flag属性多个使用:and 或 or 关键字,例如获取同时拥有`最新(new)`和`热门推荐(hot)`的属性文档
~~~
// and 是同时满足,注意两边的空格
{hkcms:content catid="9" flag="new and hot"}
标题:{$item.title}<br/>
{/hkcms:content}
~~~
2. 获取拥有`最新(new)`或者有`热门推荐(hot)`的属性文档
~~~
// or 只需要包含其中一个属性即可,注意两边的空格,多个写法:flag="new or top or top" 以此类推
{hkcms:content catid="9" flag="new or top"}
标题:{$item.title}<br/>
{/hkcms:content}
~~~
` id` 用于改变循环变量默认是`$item`,例如改成$vo则写成id="vo"无需加$。常用于多个标签嵌套时使用循环变量而不受影响
~~~
{hkcms:content catid="9" id="vo"}
标题:{$vo.title}<br />
{/hkcms:content}
~~~
`empty`为空(没有数据)提示标签,不支持传入HTML,但可以传入变量形式使用html
1. 示例如下:栏目id为111,里面没有文档时页面上显示`文档内容不存在`
~~~
{hkcms:content catid="111" empty="文档内容不存在"}
标题:{$item.title}<br />
{/hkcms:content}
~~~
2. 传入变量的形式插入html标签
~~~
{php}$empty = '<p align="center">- 没有更多数据了 -</p>';{/php}
{hkcms:content catid="111" empty="$empty"}
标题:{$item.title}<br />
{/hkcms:content}
~~~
`cache` 设置缓存时间,默认是3600秒
~~~
// 设置7200秒
{hkcms:content catid="9" cache="7200"}
标题:{$item.title}<br />
{/hkcms:content}
~~~
`mod`属性用于每隔N行输出的内容,例如控制N条记录的换行、或增加hr等,例如下面的例子每输出5个栏目增加一个下划线标签
~~~
{hkcms:content catid="9" mod="5"}
标题:{$item.title}<br/>
{if $mod==5} // 启用mod后,会有$mod变量
<hr>
{/if}
{/hkcms:content}
~~~
1. 输出奇数偶数记录,例如:mod="2",标签内会有$mod变量,里面的值每次计算到2的时候重新计数例如(1,2 | 1,2 | 1,2)
~~~
{hkcms:content catid="9" mod="2"}
{if $mod==2}
偶数:{$item.title} <br>
{else /}
奇数:{$item.title} <br>
{/if}
{/hkcms:content}
~~~
`key `参数用于指定循环`$i`的变量,只有标签嵌套时可能需要重新命名$key
~~~
{hkcms:content catid="9"}
// $i 是从1开始的。
<p>序号:第{$i}篇文档 </p>
<p>标题:{$item.title} </p>
{/hkcms:content}
~~~
改变$i的名称
~~~
{hkcms:content catid="9" key="ii"}
<p>序号:第{$ii}篇文档 </p>
<p>标题:{$item.title} </p>
{/hkcms:content}
~~~
## 常用示例
- 获取栏目ID为1的列表
~~~
{hkcms:content catid="1"}
<p>计数变量:$i,从1开始:第{$i}篇</p>
<p>数组索引:{$key}</p>
<p>标题:{$item.title}</p>
<p>封面:{$item.thumb}</p>
<p>URL:{$item.url}</p>
{/hkcms:content}
// 传入变量的形式
{hkcms:content catid="$Cate.id"}
<p>标题:{$item.title}</p>
<p>封面:{$item.thumb}</p>
<p>URL:{$item.url}</p>
{/hkcms:content}
~~~
- 根据模型ID获取
~~~
{hkcms:content model="1"}
<p>循环变量,从1开始:{$i}</p>
<p>数组索引值:{$key}</p>
<p>标题:{$item.title}</p>
<p>封面:{$item.thumb}</p>
<p>URL:{$item.url}</p>
<p>作者:{$item.author}</p>
<p>关键字:{$item.keywords}</p>
{/hkcms:content}
~~~
- 只获取6条数据
~~~
{hkcms:content model="1" num="6"}
<p>循环变量,从1开始:{$i}</p>
<p>数组索引值:{$key}</p>
<p>标题:{$item.title}</p>
<p>封面:{$item.thumb}</p>
<p>URL:{$item.url}</p>
<p>作者:{$item.author}</p>
<p>关键字:{$item.keywords}</p>
{/hkcms:content}
~~~
获取文章的分类信息与模型信息
~~~
{hkcms:content model="1"}
<p>标题:{$item.title}</p>
<p>封面:{$item.thumb}</p>
<p>URL:{$item.url}</p>
<div>栏目名称:{$item.category.title}</div>
<div>栏目英文:{$item.category.name}</div>
<div>模型名称:{$item.model.name}</div>
<div>模型类型:{$item.model.type}</div>
{/hkcms:content}
~~~
- ~~获取副表信息~~、后续版本默认包含
~~~
{hkcms:content catid="1" more="1"}
<p>标题:{$item.title}</p>
<p>封面:{$item.thumb}</p>
<p>浏览量:{$item.views}</p>
{/hkcms:content}
~~~
- 获取包含栏目子级的列表数据
~~~
注:默认是包含的,如果不想包含 insub="0" 即可
{hkcms:content catid="1" insub="1"}
<p>标题:{$item.title}</p>
{/hkcms:content}
~~~
- 数据分页
开启分页,每页只显示2条记录
~~~
{hkcms:content catid="1" page="1" num="2"}
<p>标题:{$item.title}</p>
{/hkcms:content}
<div>
//配合分页标签
{hkcms:contentpage item="home,pre,pageno,next,last,info,jump" /}
</div>
~~~
- 文档属性
flag="top and new"表示只查出同时满足top和new属性值,flags="top or new"表示只要查出有top或new属性值,注意and和or两边的空格
~~~
{hkcms:content num="6" page="1" flag="top or ceshi"}
标题:{$item.title}
循环文档属性(包含所有属性字段):
{hkcms:volist name="item.flags" id="vo"}
<span>{$vo['title']}</span>
{/hkcms:volist}
原始值:{$item.flags_raw}
{/hkcms:content}
~~~
## 字段调用
更多字段可在模型管理》字段管理里面找到字段的名字,以下仅包含主要的字段
**注意:其中`$item`变量根据content标签的id参数影响,默认是:$item。$Info 是详情页固定调用方式**
| 字段名 | 说明 | 调用方式 | 详情页 |
| --- | --- | --- | --- |
| id | 文档ID | {$item.id} | {$Info.id} |
| category_id | 文档所属栏目ID | {$item.category_id} | {$Info.category_id} |
| category_ids | 文档所属父栏目ID,例如:1,2,3 逗号分隔开 | {$item.category_ids} | {$Info.category_ids} |
| model_id | 文档所属模型ID | {$item.model_id} | {$Info.model_id} |
| flags | 文档属性,数组,使用volist标签循环 | {$item.flags} | {$Info.flags} |
| - title | 使用volist循环后,里面写{$item.title},文档属性标题 | - | - |
| - name | 文档属性标题 | - | - |
| flags_raw | 文档属性,多个属性逗号分隔,例如:top,new | {$item.flags_raw} | {$Info.flags_raw} |
| lang | 语言标识 | {$item.lang} | {$Info.lang} |
| publish_time | 发布时间,格式是秒,使用date日期格式化标签,或使用下方的字段 | {$item.publish_time} | {$Info.publish_time} |
| publish_time_text | 发布时间,格式是年月日时分秒 | {$item.publish_time_text} | {$Info.publish_time_text} |
| fullurl | 包含完整域名的URL | {$item.fullurl} | {$Info.fullurl} |
- 简介
- 下载与安装配置
- 下载
- 虚拟主机安装
- 虚拟主机必读
- 百度云虚拟主机
- 创业云虚拟主机
- Linux下宝塔安装
- 宝塔一键部署
- Windows下宝塔安装
- phpEnv下安装
- phpStudy下安装
- 伪静态(url重写)
- 安装系统
- 调试模式与env文件
- 重新安装与安装文件说明
- 后台使用帮助
- 后台入口文件
- 首页面板
- 配置中心
- 站点配置
- 邮件配置
- 附件配置
- 应用中心配置
- 前台URL规则配置
- SEO设置
- SEO设置-静态生成
- 文档属性
- 站点模块
- V2.2.2版本 -
- V2.2.3版本 +
- 模型管理
- 栏目管理
- 字段类型与组件
- 前言
- 前端组件
- 动态下拉(selectpage)
- 验证规则
- text 单行文本
- textarea 多行文本
- radio 单选
- checkbox 复选
- select 下拉列表
- selects下拉列表(多)
- selectpage 动态下拉
- editor编辑器
- image图片
- images图片(多)
- number数字
- date日期
- datetime日期和时间
- downfile文件上传
- downfiles文件上传(多)
- array 数组(键值对)
- 内容管理
- 自定义URL
- 多语言
- 界面多语言
- 内容多语言
- 多语言URL地址
- 附件管理
- 应用中心
- 标签语法
- 标签使用必读
- 列表标签
- content 内容列表标签
- contentpage 内容列表分页
- wfpage 瀑布流分页
- filter 筛选标签
- order 排序标签
- 内容标签
- guestbook 留言(表单)标签(废弃)
- form 表单标签
- pre 上一篇标签
- next 下一篇标签
- prenext 上一篇下一篇(高级)标签
- fileinfo 获取附件信息(文件下载)
- 内容分页
- raw 格式化编辑器文本(即将废弃)
- 全局标签
- seo 标签
- channel 栏目标签
- arcone 获取单条文档
- breadcrumb 面包屑导航标签
- adv 站点模块标签
- date 日期格式化标签
- substr字符(标题)截取标签
- volist 循环标签
- language 获取语言列表标签
- lang 特定语言下显示内容标签
- query 查询数据库内容
- include 导入模板文件标签
- 原生PHP与php标签
- map生成位置地图
- thumb 生成缩略图
- addons 插件检测
- 标签管理
- taglist标签(获取标签列表)
- tagarclist根据标签获取文章内容列表
- 导入标签
- 模板开发
- 1. 创建模板
- 2. 模板目录结构
- 3. 模板描述文件(重要) info.ini
- 4. 变量输出格式
- 4. 模板变量
- 5. 获取站点配置
- 6. 模板界面多语言
- 7. 模板静态目录及调用静态文件
- 8. 模板定义插件事件
- 9. 模板搜索页
- 10. 模板配置JSON
- 11. 导入演示数据
- 12. 卸载删除演示数据
- 13. 模板文件打包
- 14. 整站源码打包
- 插件开发
- 1. 创建插件
- 2. 目录结构
- 3. 插件名称类
- 4. 插件信息(info.ini)
- 5. 插件事件
- 6. 配置文件
- 7. install 安装目录
- 8. 创建菜单
- 9. 插件控制器
- 10. 插件视图
- 10-1 插件主题化
- 11. 插件模型
- 12. 模型事件(已废弃)
- 13. 插件内置函数
- 13-1 插件函数库
- 14. 插件多语言
- 15. 插件中间件
- 16. 插件路由
- 17. 插件验证器
- 18. 标签库
- 19. 第三方类库
- 20. 数据库文件导入
- 插件打包
- 后台前端使用帮助
- 二次开发帮助(更新中)
- 后台前端开发帮助
- 路由(链接地址、访问规则)
- URL访问
- 路由定义
- URL生成
- 会员管理
- 前台限制页面登录或权限控制
- 附录
- 数据字典
- 助手函数库
- API接口