---
title: "Headless CMS、传统 CMS 还是静态网站？"
canonical: https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/
language: zh
description: "从编辑、预览、内容复用、迁移和持续责任比较常见配置。先考虑实际维护内容的人。"
image: "https://wavect.io/img/general/bak/open_graph_preview.jpg"
---

采购需求

# 哪种网站配置适合你的编辑团队？

从编辑、预览、内容复用、迁移和持续责任比较常见配置。先考虑实际维护内容的人。

简短回答

先选编辑流程。Headless 指内容管理与展示分离，静态描述交付方式。两者可同时使用，也都不是通用升级。

适用情况

- 在建站或迁移前选择编辑流程的团队。
- 权衡内容复用与前端运营责任的发布团队。

不在本指南范围内

- 假定 Headless 自动提高速度或排名。
- 没有明确编辑问题就替换运行良好的 CMS。

// 01

## 比较各个选项

这是常见配置，不是保证包含的产品功能。

| 问题 | 传统耦合 CMS | 内容即代码 | Headless CMS |
| --- | --- | --- | --- |
| 日常编辑 | 常见集成页面编辑器 | 通常需要技术流程 | 独立编辑器，前端预览需集成 |
| 内容复用 | 取决于模型和接口 | 结构化文件可以支持 | 可通过 API 服务多个渠道 |
| 预览与审批 | 检查产品和配置 | 检查分支预览及审阅流程 | 一起检查草稿、预览和发布 |
| 运行责任 | CMS、扩展与托管 | 仓库、构建与托管 | CMS 加前端、构建与集成 |
| 迁移与导出 | 检查内容、媒体和插件依赖 | 检查文件格式和构建依赖 | 检查 API、模型和媒体导出 |

// 02

## Wavect 的立场

保留健康的 CMS 可能更合适。改进模板、内容结构或维护，未必需要迁移。独立内容 API 会增加责任，需要真实的发布或复用需求。 [WordPress 文档说明 REST API 内容访问](https://developer.wordpress.org/rest-api/) ，熟悉的 CMS 也可支持独立前端。 [Astro CMS 指南](https://docs.astro.build/en/guides/cms/) 介绍外部内容与前端渲染选择。来源核查于 2026 年 10 月 19 日，并非指定技术栈。

三个示意场景：页面稳定的小企业可以保留当前 CMS，或在有技术维护者时采用内容即代码。频繁发布多语言内容的团队应实际测试角色、预览和翻译。多个渠道复用结构化内容的组织可能受益于 Headless，前提是前端和运行责任明确。编辑能力或工作方式变化时，每项建议都可能改变。

迁移前盘点页面、媒体与 URL，映射字段、重定向、语言版本、元数据、规范链接和结构化数据。草稿不公开索引，上线后验证重要旧入口。架构本身不会提高排名，也不保证保留排名。

分别计算设计实施、内容录入、迁移、许可、托管、构建用量、集成与维护。核查访问和导出权，不假定 Headless 或开源自动消除锁定。AI 辅助生产是交付方式，不是 CMS 类别；草稿仍需事实和功能审阅。通过 [网站开发](/zh/services/website-development/) 讨论流程，主要需求是产品行为时选择 [Web 应用](/zh/services/web-apps/) 。

### 对每个候选方案进行相同的编辑演练

给编辑一张代表性服务页、一张图片、一份翻译草稿和一次旧内容修正。让其创建草稿、预览真实前端、修改搜索字段、请求审批并发布，再撤回页面或恢复旧版本。观察哪些步骤需要开发人员帮助。只演示填写标题，不是在测试你的发布流程。

明确谁能预览未发布内容，以及缺少翻译时如何呈现。检查预览与生产是否使用相同内容模型，构建失败时上一版正常网站是否仍可访问。这些是产品与实现问题，Headless 标签本身不能回答。

### 为实际需要的复用建模

一条服务记录可拆成标题、摘要、正文、证据与联系动作。若还要用于其他渠道，应明确共用字段和展示专用字段。需要单独事实的渠道不适合只用一个非结构化正文；但也不必为无人能描述的未来用途设计万能模型。

用长标题、缺失可选字段和多语言测试。决定链接与媒体如何引用、谁负责共享记录、更新会影响哪些位置。复用减少重复录入，也会扩大一次错误更新的影响。

### 选择前演练迁移与退出

导出一张代表性页面，连同媒体、关联关系和语言版本。接收团队应能在不依赖供应商专用插件的情况下理解它。列出无法转移的部分：预览、页面模板、审批规则或扩展数据可能需要重建。

为重要旧 URL 指定保留或替代路径，并在迁移后检查。比较完整运营工作：编辑支持、CMS 更新、前端依赖、构建失败、备份与恢复。如果小范围模板或流程调整就能解决问题，应保留健康的现有系统。

// 03

## 这里通常会出什么问题

- 有内容 API，但预览与审批只在幻灯片上出现。让编辑在拟议配置中完成完整演练。
- 每张页面都建立独立内容类型。先找代表性模板，再判断哪些差异确实需要结构化字段。
- 迁移报价漏掉媒体、链接、翻译或重定向。报价前先盘点并明确审阅责任。

// 04

## 检查清单

用这些问题准备范围。

- 谁编辑，多频繁，需要什么技术能力？
- 哪些内容类型、语言和渠道需要复用？
- 哪些预览、角色与审批必须实际可用？
- 哪些表单、集成和旧 URL 需要保留用途？
- 谁负责 CMS 账户、前端、导出、托管和维护？
- 演练草稿、预览、审批、发布、撤回与恢复。
- 测试包含媒体、关系和翻译的导出。
- 明确 CMS 与前端各自的更新和故障责任。

// 05

## 在我们的工作中是什么样子

MyMerch 提供店面工程背景，不证明客户 Headless CMS 迁移。

### [MyMerch](/zh/case-studies/mymerch/)
- **Status:** 上线
- **Outcome:** ~50% - 效率提升（客户口径）
- **Summary:** ~50% 效率提升（客户口径）。交付错误降低、Shopify 店铺转化抬升，不重写。
- **Stack:** Shopify, Shopify Liquid, JavaScript

这些是精选项目，并非我们的全部作品。自 2018 年以来我们已交付 75+ 款产品。

// 06

## 相关服务与阅读

- [服务 网站开发](/zh/services/website-development/)
- [指南 软件交接清单](/zh/software-development-guide/software-handover-checklist/)
- [案例研究 Mymerch](/zh/case-studies/mymerch/)

// 07

## 常见问题

### 静态网站能有 CMS 吗？

可以。内容可独立管理，再生成静态页面。静态交付与 Headless 内容管理是不同选择。

### 传统 CMS 什么时候足够？

编辑、预览和发布工作顺畅，且没有足以支持额外运行投入的独立前端或复用需求时。

### 非技术同事可以编辑吗？

在所选产品和预览配置中测试真实任务。架构标签本身不能回答。

### 上线后持续哪些费用？

许可、托管、构建、集成和维护取决于配置。应明确责任以及退出和导出条款。

最近审阅: 2026-10-19 审阅人 [Kevin Riedl](/zh/team/kevin-riedl/) [wiki ↗](https://www.wikidata.org/wiki/Q139796365)

## Structured Data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://wavect.io/#organization",
      "@type": [
        "Organization",
        "ProfessionalService",
        "LocalBusiness"
      ],
      "employee": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "founder": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "legalRepresentative": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "name": "Wavect GmbH",
      "subjectOf": {
        "@id": "https://wavect.io/verified-claims.json#dataset",
        "@type": "Dataset",
        "creator": {
          "@id": "https://wavect.io/#organization",
          "@type": [
            "Organization",
            "ProfessionalService",
            "LocalBusiness"
          ]
        },
        "description": "A machine-readable registry of quantitative and qualitative claims published by Wavect, with review dates, localized page appearances and public third-party citations where available.",
        "inLanguage": "en",
        "isAccessibleForFree": true,
        "license": "https://creativecommons.org/licenses/by/4.0/",
        "name": "Wavect verified publication claims",
        "url": "https://wavect.io/verified-claims.json"
      },
      "url": "https://wavect.io/"
    },
    {
      "@id": "https://wavect.io/team/kevin-riedl/#person",
      "@type": "Person",
      "jobTitle": "Managing Director",
      "name": "Kevin Riedl",
      "sameAs": [
        "https://www.wikidata.org/wiki/Q139796365",
        "https://www.linkedin.com/in/wsdt",
        "https://github.com/wsdt"
      ],
      "url": "https://wavect.io/team/kevin-riedl/",
      "worksFor": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      }
    },
    {
      "@id": "https://wavect.io/team/christof-jori/#person",
      "@type": "Person",
      "jobTitle": "Managing Director",
      "name": "Christof Jori",
      "sameAs": [
        "https://www.wikidata.org/wiki/Q139796367",
        "https://www.linkedin.com/in/jocr77/",
        "https://github.com/jo-chris"
      ],
      "url": "https://wavect.io/team/christof-jori/",
      "worksFor": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      }
    },
    {
      "@id": "https://wavect.io/#website",
      "@type": "WebSite",
      "inLanguage": [
        "en",
        "de",
        "es",
        "zh"
      ],
      "name": "Wavect",
      "potentialAction": {
        "@type": "SearchAction",
        "query-input": "required name=search_term_string",
        "target": {
          "@type": "EntryPoint",
          "urlTemplate": "https://wavect.io/search/?q={search_term_string}"
        }
      },
      "publisher": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "url": "https://wavect.io/"
    },
    {
      "@id": "https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/#webpage",
      "@type": "WebPage",
      "dateModified": "2026-10-19",
      "inLanguage": "zh",
      "isPartOf": {
        "@id": "https://wavect.io/#website",
        "@type": "WebSite"
      },
      "lastReviewed": "2026-10-19",
      "url": "https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/"
    }
  ]
}
```

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/#article",
      "@type": "Article",
      "about": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "author": {
        "@id": "https://wavect.io/team/kevin-riedl/#person",
        "@type": "Person",
        "name": "Kevin Riedl",
        "url": "https://wavect.io/team/kevin-riedl/"
      },
      "dateModified": "2026-10-19",
      "datePublished": "2026-10-19",
      "description": "从编辑、预览、内容复用、迁移和持续责任比较常见配置。先考虑实际维护内容的人。",
      "headline": "哪种网站配置适合你的编辑团队？",
      "inLanguage": "zh",
      "isPartOf": {
        "@id": "https://wavect.io/#website",
        "@type": "WebSite"
      },
      "lastReviewed": "2026-10-19",
      "mainEntityOfPage": "https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/#webpage",
      "mentions": [
        {
          "@id": "https://wavect.io/#organization",
          "@type": [
            "Organization",
            "ProfessionalService",
            "LocalBusiness"
          ]
        },
        {
          "@type": "Service",
          "name": "网站开发",
          "url": "https://wavect.io/zh/services/website-development/"
        }
      ],
      "name": "哪种网站配置适合你的编辑团队？",
      "publisher": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "reviewedBy": {
        "@id": "https://wavect.io/team/kevin-riedl/#person",
        "@type": "Person",
        "name": "Kevin Riedl",
        "url": "https://wavect.io/team/kevin-riedl/"
      },
      "speakable": {
        "@type": "SpeakableSpecification",
        "cssSelector": [
          ".cmp-hero__headline",
          ".cmp-hero__lead"
        ]
      },
      "url": "https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/"
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "item": "https://wavect.io/zh/",
          "name": "首页",
          "position": 1
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/zh/software-development-guide/",
          "name": "软件开发指南",
          "position": 2
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/zh/software-development-guide/headless-cms-vs-traditional-cms/",
          "name": "哪种网站配置适合你的编辑团队？",
          "position": 3
        }
      ]
    }
  ]
}
```

```json
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "可以。内容可独立管理，再生成静态页面。静态交付与 Headless 内容管理是不同选择。"
      },
      "name": "静态网站能有 CMS 吗？"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "编辑、预览和发布工作顺畅，且没有足以支持额外运行投入的独立前端或复用需求时。"
      },
      "name": "传统 CMS 什么时候足够？"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "在所选产品和预览配置中测试真实任务。架构标签本身不能回答。"
      },
      "name": "非技术同事可以编辑吗？"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "许可、托管、构建、集成和维护取决于配置。应明确责任以及退出和导出条款。"
      },
      "name": "上线后持续哪些费用？"
    }
  ],
  "speakable": {
    "@type": "SpeakableSpecification",
    "cssSelector": [
      ".faq-question",
      ".faq-answer"
    ]
  }
}
```
