产品经理如何搭建 CMS?从一条内容的流转开始
活动文案改一次要走产品、研发、测试全流程时,CMS 的价值不在后台菜单,而在把内容从代码里抽出来,按模型、权限、状态和版本走完创建到撤回。
基本信息
- 来源类型:文章(人人都是产品经理 / 网页)
- 原文位置:raw/articles/2026-08-30-120646-tg-35c549.md
- 原文 URL:https://www.woshipm.com/pd/6456277.html
- 作者:但是木已成舟
- 原文日期:2026-08-29
- 消化日期:2026-08-30
- 原文规模:约 44 分钟阅读;预抓取正文已写入 raw(
scripts/http_capture.py)
核心观点
- 没有 CMS 时,改一句文案会进入研发流程。 活动规则页少写一项限制,前台文字写在代码里,运营没有入口,只能把新文案发给产品经理;产品确认位置和影响范围,研发排期修改,测试回归,再等代码发布。改文案本身可能只要几分钟,时间花在沟通、确认和发布上。产品经理也很难从聊天记录判断线上是哪一版、谁确认过、出问题该回到哪里。网站一年只更新几次时这套做法负担不大;活动、公告、帮助说明开始频繁变化后,排期、权限和版本管理会一起爆。
- CMS 同时管「内容是什么」和「内容走到哪」。 IBM 把 CMS 概括为帮助用户创建、管理、存储和修改数字内容的软件。产品经理要抓住两个对象:内容本身(字段组成的内容模型)和内容所处的管理过程(草稿 → 待审核 → 定时/已发布 → 撤回/恢复)。内容模型规定一类内容有哪些信息、如何检索展示复用;状态反映当前走到哪;权限限制谁能做什么;版本记录保留修改过程。前台只读已发布内容,改文案不必再改前台代码。
- CMS 不是订单后台,也不等于知识库。 订单后台的待付款、已发货来自用户行为和业务规则;CMS 的草稿、待审核、已发布来自编辑与发布过程。知识库重点帮用户查找阅读;CMS 为知识库提供编辑、分类、审核和发布。帮助中心既可以叫知识库,也可以建在 CMS 上,取决于团队关心的是查找体验还是后台如何管内容。价格计算、库存扣减、支付结果仍归业务系统;CMS 只适合管其中的说明和展示内容。内容长期不变、维护人很少、改一次不影响多渠道时,简单配置后台就够,不必单独搭 CMS。
- 产品经理的工作发生在系统设计阶段,不是日常点发布。 需求常被说成「给运营做一个能改 Banner 的后台」。若直接画成图片上传框,上线后才会问:PC/移动是否同一张图、点击跳站内还是外链、出现在哪个位置、何时自动下线。业务口中的「一个 Banner」必须拆成字段、规则和使用位置。同一份会员规则若在官网、App、客服帮助页各存一份,漏改就会出现多版本;CMS 要提前判断哪些字段共用、哪些渠道差异必须保留。WordPress 的投稿者可写自己的文章但不能发布、编辑可发布并管理他人内容——角色名解决不了权限,要先拆动作再组合角色。
- 搭 CMS 之前先走通一条真实内容,而不是先画菜单。 选一类最高频内容(资讯产品通常是文章),从创建走到下线,再问异常:审核退回回到哪、定时发布中途改要不要重审、线上出错是直接改还是先撤回。三份基础材料互相检查:角色表(谁对哪些内容能创建/编辑/审核/发布)、内容清单(类型、字段、前台位置、维护人、是否重复建设)、状态流转图(每次变化的条件、失败回到哪)。一条真实内容能从创建走到发布、出错后能撤回,主要流程才算清楚。
- 基础模块沿使用路径展开,第一版先跑通一类高频内容。 内容模型 → 列表(标题/类型/状态/最近修改,加搜索筛选和批量操作的影响范围确认)→ 编辑页(按运营填写顺序,草稿保存反馈、多人冲突)→ 多端预览(说明渠道,区分线上版与编辑中的新版本)→ 审核发布(看到改了什么、退回意见绑版本、确认范围与时间)→ 版本记录(比较与恢复,并写清关联图/作者/规则是否一起恢复)→ 用户角色权限(动作 × 内容范围)→ 操作日志(谁在何时做了发布/删除/权限调整、是否成功)。第一版不必做成通用配置平台。
- 方案阶段要选范围、架构和建设方式,验收不能停在后台按钮。 调研从最近一次内容修改还原现有做法(表格、文档、聊天里藏着系统还没接住的规则)。第一版用文章跑通创建-审核-发布-版本,Banner、帮助中心、多语言、灰度留到后续。传统 CMS 把管理和展示放在一起;Headless CMS(如 Contentful 所描述)后台与展示分离、经 API 供多终端,会增加接口、预览和缓存协作。建设方式:成熟 SaaS、开源(仍要人做升级备份安全)、自研(流程特殊、和核心业务绑得紧)。验收必须用真实文章走退回、立即/定时发布、图片失效、撤回和恢复,并核对接口、缓存、前台一致。
- 上线后仍被绕开,通常是真实步骤没被接住。 六个坑:① 按前台页面而不是内容对象设计字段,首页卡片和详情页各存一份;② 状态只有草稿/已发布,退回和定时失败回到线下;③ 权限只有管理员和普通用户,赶进度把大家都设成管理员;④ 预览、版本、回滚被排到后续,运营不敢用系统改已发布内容;⑤ 第一版就追求万能配置,缺少重复需求证据;⑥ 验收只点后台页面,不看内容是否到达用户。配置功能会改变维护责任:新增字段是否兼容接口、历史如何迁移、错误配置由谁恢复。
实操内容保留
原文是产品方法文,没有可运行代码或 Prompt 模板,但给出了可直接照做的梳理步骤、角色/状态清单和验收路径。
代码/配置
(本文无实操代码/模板)
Prompt 模板
(本文无 Prompt 模板)
操作步骤
搭建前:用三份材料互相检查
- 选一类最常见内容走全流程。 以资讯文章为例:运营按选题创建(标题、正文、封面图)→ 交给审核 → 通过后发布;活动类还可能等指定时间,过期后由系统或运营下线。
- 把异常问进流程。 审核退回后回到哪个状态、原编辑能否继续改;已进入定时发布时临时修改是否重审;发布后发现错误是直接改线上还是先撤回。
- 整理角色表。 记录每个角色负责的内容范围和可执行动作(创建、编辑、审核、发布、下线)。名称可沿用团队叫法,权限必须拆到动作,才能发现同一个人是否承担冲突职责、小团队哪里能简化。
- 盘点内容清单。 记录内容类型、关键字段、前台展示位置、维护人。文章可能同时出现在首页推荐和栏目列表,封面比例与摘要长度会影响两处。运营改内容时,CMS 应提示这条内容正被哪些页面使用。同一份活动规则若分存在 Banner、活动页、帮助中心,要决定引用同一条还是保留三份独立版本。
- 画状态流转图。 可参考 WordPress:草稿、待审核、定时发布、已发布。从草稿进待审核要检查必填字段;审核通过进待发布要确认发布时间;拒绝则回到可编辑并保留退回意见。状态名称是表面,关键是每次变化的条件和失败回退点。
- 按发布方式补执行规则。 立即发布:已审完、要马上展示。定时发布:记录执行时间和时区,失败后提示负责人,运营能看到未来计划、能改/取消;到点还要检查图片和引用是否可用(Contentful 文档:支持指定时间发布或下线,并能查看计划/已完成/未来操作)。灰度发布:一部分用户看新内容,CMS 管人群/渠道/版本,前台或分发系统必须能识别人群并返回对应内容——没有这部分技术条件,只加「灰度发布」按钮完不成灰度。
- 把异常放进系统。 审核退回 → 编辑环节;定时失败 → 线上旧内容继续保留并通知;已发布出错 → 撤回或恢复版本;删除仍被前台引用的内容 → 提示,避免页面空白。
第一版方案怎么收口
- 从最近一次内容修改做调研:需求谁提出、内容现在存在哪、经过谁确认、怎样出现在前台;记下表格、文档、聊天这些临时工具。分别听内容生产者(录入是否方便)、审核(风险与责任)、前台使用者(客服按帮助文答问、市场要活动准时上线)。
- 最小范围:先处理更新频繁、字段和流程相对稳定的文章;网站先用这套,App、多语言、复杂渠道配置留到后续。第一版目标:编辑能创建修改、审核能退回或通过、发布后能找到历史版本。自定义字段、多级审核、灰度等真实需求出现后再扩展。
- 把内容清单变成内容模型和字段说明,角色表细化成权限矩阵,状态图标明触发条件;信息架构安排内容管理、审核任务、系统设置;原型包含空列表、字段错误、审核退回、发布失败,不只画正常页。
- 字段写到可实现可验收:封面图要写文件格式、尺寸、裁剪;引用作者时要写作者被删除或停用后历史文章怎么展示。
- 和研发确认内容如何到前台:存在哪、前台怎么读、更新是否过缓存、发布失败怎么反馈。传统 CMS vs Headless:后者给前台更多技术选择,但要定义各渠道读哪些字段;预览还要能访问未公开内容并限制链接范围。
- 建设方式三选:成熟 CMS 服务(少开发,确认费用和可定制范围);开源(改造空间大,团队负责升级、备份、安全);自研(流程高度特殊、与核心业务绑得紧,长期成本更高)。开源不等于没成本:插件兼容、升级、安全修复都要有人;还要确认谁维护生产、数据怎么备份、故障谁响应。
- 开发中用真实内容走查:录入几篇长度、图片数量、引用关系不同的文章 → 审核真退回一次 → 运营再改再提交 → 测立即发布和定时发布 → 模拟图片失效、发布失败、内容撤回。后台显示「已发布」只是检查点,还要确认接口正确、缓存已更新、网站/App 展示符合预期。
- 上线后看运营完成一次发布的时间、失败和人工协助次数。频繁申请新字段 → 内容模型可能要调;大量流程仍在聊天工具完成 → 系统没接住对应协作规则。
上线后用一条真实内容做验收用例
- 新建一篇帮助中心文章:编辑填写 → 审核确认 → 按设定时间发布 → 去前台找到它。沿途记录角色、状态、展示结果。
- 故意改错一个字段:看谁能改、改后是否重审、前台何时更新。
- 撤回这条内容,再恢复历史版本,检查操作记录能否说明发生了什么。
- 若后台已显示发布成功、前台没变,继续查接口、缓存、客户端。
- 批量操作单独测:批量下线十条、其中一条仍被首页引用时,是全部终止,还是完成其余九条并报告失败项。
内容模型与字段设计要点(原文可复用规则)
- 先定义内容类型,再为每种类型配字段:名称、输入形式、校验规则、关联关系。Contentful:内容模型由多个内容类型组成,类型含自己的字段,不同类型可通过引用字段联系。
- 文章示例字段:标题(限制长度)、正文、作者(引用已有作者,不要纯文本乱填)、封面图(规定比例)。只给任意文本框,运营容易填入前台无法正确展示的内容。
- 栏目不要写成普通文本(同一栏目会出现多个写法),改成可选择的栏目对象,才能统一筛选和展示。字段越灵活,后续数据越容易乱;按真实使用频率决定哪些固定、哪些允许配置。
- 不要按单个前台页面存完整内容。首页只要标题和封面,详情页还要作者与正文——应先定义文章对象,再让不同页面读取所需字段。
- 后台信息按使用任务组织,不要把数据库内部编号和技术状态直接摊给运营;运营关心出现在哪、何时上线、当前由谁处理。
权限、版本、日志怎么拆
- 权限两部分:能执行哪些动作 × 能管理哪些内容。某栏目运营可编辑该栏目文章,未必能改其他栏目;审核可通过内容,不一定有删除权。人员和职责稳定时预设几个角色;组织变大或内容风险高后再做自定义角色和更细范围。
- WordPress 版本功能记录保存过的草稿和已发布更新,可比较并恢复到选定版本。第一版可用较简单方案,但必须让用户看明白恢复范围(正文恢复时,封面图/作者/活动规则是否一起恢复)。
- 版本记录关注内容变了什么;操作日志还要记录谁执行了发布、删除或权限调整,以及系统是否执行成功。产品页先展示操作人、时间、动作和结果;完整接口响应和错误信息留给研发。
关键概念
- CMS / 内容管理系统 — 本文核心对象:管内容模型、状态、权限、版本,并把已发布内容交给前台
- 内容模型 — 一类内容包含哪些字段,决定检索、展示和复用方式;被评论视为「地基」
- 内容状态流转 — 草稿、待审核、定时发布、已发布及退回/撤回;状态应改变责任人、可执行操作或前台结果
- 权限矩阵 — 先拆创建/编辑/审核/发布/下线等动作,再组合成角色,并限制内容范围
- Headless CMS — 内容管理与展示层分离,经 API 提供给网站或 App;预览、缓存、多渠道字段要额外设计
- WordPress 角色与版本 — 投稿者/编辑的权限拆分,以及草稿与已发布更新的版本比较恢复,被用作对照案例
- Contentful — 文中引用其内容模型(类型+字段+引用)和定时发布/下线能力
- 灰度发布 — CMS 管人群、渠道、版本,但必须有前台或分发侧按人群返回内容的能力
与其他素材的关联
- 与后台产品、权限设计、版本管理类素材同属「把线下协作规则收进系统」这条线:本文的验收标准是内容真正到达用户,而不是后台状态变成「已发布」。
- 与知识库/帮助中心相关讨论可对照:知识库偏查找阅读体验,CMS 偏编辑审核发布;帮助中心可以同时是两者。
- (本库若已有 WordPress、Headless、后台权限相关摘要,本文提供的是产品经理视角的内容流转方法,而不是具体开源 CMS 的安装教程。)
原文精彩摘录
活动准备上线时,运营发现规则页少写了一项限制条件,可前台页面由研发写在代码里,运营没有修改入口,只能把新文案发给产品经理。产品经理确认展示位置和影响范围,研发排时间修改,测试人员检查页面,最后等待代码发布。……一句文案可能几分钟就能改完,时间主要花在沟通、确认和发布上,内容改得越频繁,这个问题出现得越多。产品经理还很难从零散的聊天记录中判断,当前线上使用的是哪一版,谁确认过这次修改,出了问题又该恢复到哪里。
很多 CMS 需求最初只有一句话,给运营做一个能修改 Banner 的后台。如果产品经理把需求直接画成图片上传框,研发很快就能做完。系统投入使用后,问题才会出现。电脑端和手机端是否使用同一张图片,点击以后跳到站内页面还是外部链接,Banner 应该出现在哪个位置,又该在什么时间自动下线,这些问题都会回到产品经理手里。业务人员口中的「一个 Banner」,到了产品设计阶段,需要变成字段、规则和使用位置。
当一条真实内容能够从创建走到发布,并在出错后顺利撤回,CMS 的主要流程才算清楚;流程中的每个动作都能找到对应页面和权限,后面的功能设计才有依据。
灰度发布的要求更高。它会让一部分用户先看到新内容,其他用户继续看到旧版本。CMS 可以管理目标人群、渠道和内容版本,前台或内容分发系统还需要具备识别人群并返回对应内容的能力。团队缺少这部分技术条件时,在 CMS 里增加「灰度发布」按钮并不能完成灰度。
CMS 页面显示「已发布」只是一个检查点。产品经理还要继续确认接口返回了正确内容,缓存已经更新,网站或 App 展示符合预期。后台状态和前台结果一致,这次发布才算完成。
一套 CMS 可以顺利通过功能测试,上线后仍被运营绕开。内容继续记在表格里,发布前仍要在群里确认,系统只负责最后一步录入。用户绕开系统,通常说明某个真实步骤没有被接住。页面数量和按钮数量无法弥补这些缺口。
评论中的补充
人人都是产品经理站内评论(用户「呼噜」):内容模型是地基,字段设计成文本还是对象,直接决定后面能不能筛选和复用;但每个字段的维护责任还得落到具体角色上,否则运营随意填、审核不把关,再好的结构也会被搞脏。
相关页面
- 本文关键概念均以纯文本标注;对应实体页/主题页若后续创建,再回填双向链接。