内容管理系统 : 当用户正在开发内容管理系统或操作类似内容管理系统的软件时, 请使用这一技能
功能概述
内容管理系统 : 当用户正在开发内容管理系统或操作类似内容管理系统的软件时, 请使用这一技能是一项面向实际任务的技能,主要用于这一技能侧重于CMS工作中重要的连接。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
核心要点
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
- 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
使用与执行
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
结果检查与注意事项
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
内容管理系统(CMS)
当用户正在使用内容管理系统,或正在使用行为类似 CMS 的软件时,请使用本技能。
本技能聚焦于 CMS 工作中真正关键的“接口层”(seams):
- 主题与模板
- 插件、应用、模块与扩展
- 后台管理与编辑器界面
- 媒体处理与文件上传
- 内容模型、分类法(taxonomy)与元数据
- 渲染流程与静态导出流程
何时使用本技能
- 用户提到了某个 CMS 平台,例如 WordPress、Shopify、Drupal、Joomla、Webflow、Squarespace、Wix、WooCommerce、HubSpot CMS Hub 或 Adobe Experience Manager。
- 任务涉及主题开发、模板修改,或在 CMS 内部进行设计系统相关工作。
- 任务涉及插件、模块、应用或扩展点(extension points)。
- 任务涉及编辑器用户体验(UX)、预览功能、分类法、slug、SEO 字段或发布行为。
- 任务涉及文件上传、媒体库、作者创作的资源(authored assets)、Markdown 渲染或静态导出。
初次分析步骤
- 识别平台类别:自托管 CMS、SaaS 网站构建器、电商平台,还是混合型/无头(headless)系统。
- 在编辑前,先定位其所属的实现接口层(owning implementation seam):
- 主题或模板层
- 插件、应用、模块或扩展层
- 后台管理或编辑器界面层
- 内容模型或存储层
- 媒体处理流程
- 导出、部署或渲染流程
- 在选择具体方案前,检查平台约束条件:
- 哪些内容可在本地编辑
- 哪些属于作者创作的内容,哪些属于代码
- 媒体文件应存放于何处
- 最终站点是服务端渲染(server-rendered)、静态导出(static-exported),还是远程托管
CMS 基本原则
- 遵循平台对主题、模块、模板片段(template parts)或区块(sections)所规定的命名与目录结构规范。
- 除非平台明确将二者合并,否则应将主题资源(theme assets)与用户上传的媒体文件(user-uploaded media)严格分离。
- 优先使用结构化的内容字段,而非将关键元数据嵌入呈现层标记(presentation markup)中。
- 将预览(previews)、slug、分类法(taxonomy)、摘要(excerpts)、元字段(meta fields)及发布状态(publish states)视为 CMS 的核心关注点(first-class concerns)。
- 当配置、主题选择或内容输入无效时,优先采用安全默认值,并提供优雅的降级行为(graceful fallback behavior)。
- 修改编辑器或后台管理行为时,需同步追踪对应存储字段、校验规则、预览路径以及最终渲染路径。
常见工作流
主题与模板
- 从模板加载器(template loader)或主题运行时(theme runtime)入手,而非下游的 include 文件。
- 保留平台既定的模板层级结构(template hierarchy)与局部模板(partials)命名规范。
- 将呈现层变更尽量限制在模板及共享的主题辅助函数(shared theme helpers)附近。
插件、应用与模块
- 在平台定义的扩展接口层(extension seam)添加逻辑,避免将业务逻辑分散到模板中。
- 确保迁移脚本(migrations)、种子数据(seed data)与配置更新显式声明,并纳入版本控制。
- 若平台要求插件必须手动激活或注册,则需明确记录该扩展的初始化前提假设(setup assumptions)。
后台管理与编辑器 UX
- 表单结构应与底层存储的内容模型保持一致。
- 当内容转换逻辑较复杂时,优先提供面向作者的实时预览(author-facing previews)。
- 表单校验、CSRF(或等效)防护机制及权限控制,应与周边后台管理代码保持一致。
媒体与上传
- 为作者创作的媒体资源(authored media)设置专用上传路径。
- 装饰性图片或主题自有图像应存放在当前启用的主题目录下。
- 默认情况下,作者创作的媒体资源应存放于
uploads/ 目录,主题资源则存放于 img/ 目录;除非平台强制规定了更严格的约定。
- 若 CMS 支持可配置的媒体目录,请通过配置项暴露该设置,并提供安全的默认回退值(safe fallback)。
内容模型与迁移
- 清晰区分各类内容实体:页面(pages)、文章(posts)、商品(products)、条目(entries)、集合(collections)、分类法(taxonomies)和设置(settings)。
- 优先采用迁移文件(migration files)或可导出的 Schema 定义,而非运行时临时修改(ad hoc runtime mutations)。
- 确保 slug、发布时间、摘要、规范元数据(canonical metadata)及分类法关联关系均以结构化方式存储。
Markdown、HTML 与静态导出
- 在修改渲染器前,先明确 Markdown 在当前流程中的角色:是作者输入、中间内容,还是构建输出。
- 在可行前提下,将渲染器变更与预览或校验逻辑成对调整。
- 对于支持静态导出的 CMS,构建变更后需验证重写后的永久链接(permalinks)与资源路径(asset paths)是否仍有效。
识别所属接口层(Owning Seam)
无论使用何种平台,在开始编辑前,都应先通过以下 CMS 角色映射代码库,定位其所属的接口层:
- 运行时启动与请求路由(Runtime bootstrap and request routing)
- 后台管理或编辑器控制器及其视图模板(Admin or editor controllers and their view templates)
- 主题加载、模板层级结构及共享模板辅助函数(Theme loading, template hierarchy, and shared template helpers)
- 内容、分类法与设置所对应的仓库(repositories)、模型(models)或 Schema / 迁移文件(schema/migration files)
- Markdown 或内容转换工具(Markdown or content transformation utilities)
- 静态导出、部署或渲染流程的入口点(Static export, deploy, or render pipeline entry points)
首先跳转至所属接口层,再以最小必要改动完成修改,同时确保 CMS 整体结构不受破坏。
各平台注意事项
详见 references/cms-platform-workflows.md,其中汇总了主流 CMS 平台的扩展接口层(extension surfaces)、媒体约定(media conventions)等关键信息。