🗂️ 内容多选遍历(内容模型)
最后更新:2026-10-02
📖 内容模型说明
每个模型可自定义扩展字段,数据自动存入独立数据表。
- 内置模型:news / product / case / page
- 自定义模型:通过「内容模型 → 添加模型」创建,编码唯一(如 certificate、honor、team)
- 扩展字段:在「字段设置」中添加,保存后自动在数据表新增字段列
- 模板调用:用
{{range list "type=模型编码"}}取出
⚠️ list 只返回标准字段:ID / Title / Summary / Image / Thumbnail / CreatedAt / IsRecommend / URL。自定义模型在「字段设置」里加的扩展字段(如颁发机构、颁发日期等)不会出现在 list 结果里,须在该模型的详情页使用(详情页才会返回完整数据行)。
💻 使用示例
<!-- 调用自定义模型内容(type 填模型编码,如 certificate) -->
{{range list "type=certificate&num=6&order=date"}}
<div class="item">
<img src="{{.Image}}" alt="{{.Title}}">
<h4>{{.Title}}</h4>
<p>{{.Content}}</p>
</div>
{{end}}
<!-- 自定义模型 + 标准字段(list 可用) -->
{{range list "type=honor&num=12&order=date"}}
<div class="honor-item">
<h4>{{.Title}}</h4>
<img src="{{.Image}}" alt="{{.Title}}">
<p>{{.Summary}}</p>
</div>
{{end}}
<!-- 扩展字段(如 .IssuingAuthority / .IssueDate)仅在「详情页」可用,list 不返回 -->
📋 多选遍历(数组字段)
对于多选字段(如合作品牌、相关产品),以 JSON 数组存储,用 splitJSON 遍历。⚠️ 这类字段属于扩展字段,仅在内容详情页可用;用 list 取列表时不会出现,遍历会得到空。
<!-- 合作品牌(多选 JSON 数组) -->
{{if .Brands}}
<div class="brands">
{{range splitJSON .Brands}}
<img src="{{.}}" alt="合作品牌">
{{end}}
</div>
{{end}}
<!-- 相关产品 ID 列表(多选 ID) -->
{{range splitJSON .RelatedIDs}}
<a href="/product/{{.}}">查看相关产品 →</a>
{{end}}
Gitl.cn云建站 SaaS