Skip to content

内容组件、受控分类与集合 ​

内容组织分为业务模型、导航栏目、受控分类和内容集合。模型描述内容字段,栏目决定访问路径和导航,词表规范分类,集合统一用于页面编排的筛选与排序。

可复用内容组件 ​

在「内容模型 → 可复用组件」维护字段组。组件工作稿可包含完整字段类型、默认值和嵌套规则,发布后产生不可变版本;模型的字段组、重复组件或区块引用明确的组件版本。更新组件不会自动改变已经发布的模型版本。

模型和组件发布前可查看字段变化和使用范围。已发布稿件继续使用其修订固定的模型、组件展开字段和素材版本。数组和区块实例保留稳定 _id,编辑排序不会改变实例身份。定义最多嵌套 6 层、合计 500 个字段;循环引用与重复标识被拒绝。

受控分类 ​

「受控分类」管理站点词表及词条。词表可限定适用内容模型、发布是否必选以及最多选择数量;词条支持父子层级、别名和多语言名称。词条复用已有标签 ID 与内容打标关系,未绑定词表的标签仍为自由标签。

内容编辑页分组显示分类与自由标签。草稿可暂缺必选分类,提审和发布执行严格检查;跨站、不同词表父子关系、循环和超过 12 层的层级均被拒绝。仍在使用的受控词条不能直接删除。

内容集合 ​

「内容集合」保存栏目、分类、模型字段和语言条件,支持人工固定、排除、排序和数量。字段条件全部满足,模型字段筛选值遵循字段类型,数字按数值排序,空值排在最后。固定内容按选择顺序出现,仍须满足公开可见性和排除规则。

每次保存生成定义版本并准备配置发布草稿,保存不直接改变线上。集合的模型版本随定义固定;页面内容列表、首页区域、Theme API 的 contents.list({ collectionId, limit }) 与开放网关 /v1/cms/collections/{id} 使用同一解析器。

集合解析只读取同一公开代次中的内容与定义。日期条件为显式日期值,集合成员不是独立发布分支;当前代次之外的新内容需按正常流程发布。后台预览按当前集合规则与已发布内容显示命中原因。上线时应将依赖集合配置与页面一并纳入发布单。

实现入口 ​

  • Shared:cms/model-design.ts、cms/model-compiler.ts、cms/taxonomy.ts、cms/content-collections.ts 与对应契约。
  • Server:cms-components.service.ts、cms-model-compiler.ts、cms-vocabularies.service.ts、cms-content-collections.service.ts。
  • Web:ModelsPage、TaxonomyPage、CollectionsPage,动态模型字段统一由 model-field-renderer.tsx 渲染。

所有数据写入继续执行站点、栏目与对象权限;审批、发布单、任务、通知和审计复用现有基础设施。

Built with VitePress for local documentation preview.