SEO 实战笔记·Contentful
CMS 选型与站点架构:为什么我选择了 Contentful
庞梦桐·
ContentfulCMS站点架构内链策略
为什么 CMS 选型对 SEO 很重要
很多人觉得 CMS 只是一个「写文章的地方」,但对 SEO 来说,CMS 的选择直接影响:
- 页面加载速度:SSR/SSG 还是 CSR?影响 Core Web Vitals
- URL 结构:能不能自定义?是否支持层级结构?
- 结构化数据:能不能灵活添加 Schema Markup?
- 内容模型:能不能支持标签、分类、关联文章等 SEO 需要的内容关系?
我考虑过的方案
| CMS | 优势 | 劣势 |
|---|---|---|
| WordPress | 生态成熟、SEO 插件丰富 | 性能较重、安全风险 |
| Notion + Super | 使用简单 | SEO 控制力有限 |
| Ghost | 为内容而生 | 自定义灵活度一般 |
| Contentful | Headless、API 驱动、高度灵活 | 学习成本稍高 |
为什么最终选了 Contentful
- Headless 架构:内容和前端完全分离。我可以用 Next.js 做前端,拿到 SSG(静态生成)的性能优势,同时保持内容管理的灵活性
- 内容模型自定义:我可以为每篇文章定义:标题、slug、摘要、正文、分类、标签、发布时间、封面图——所有 SEO 需要的字段都可以精确控制
- API 友好:通过 GraphQL 或 REST API 获取内容,配合 Next.js 的 ISR(增量静态再生成),实现了「内容更新后自动重新生成页面」
- 免费额度足够:对于小型项目,Contentful 的免费套餐完全够用
URL 结构设计
URL 结构是 SEO 的基础设施之一。我为 maidinhk.com 设计了以下结构:
maidinhk.com/ → 首页
maidinhk.com/blog/ → 博客列表
maidinhk.com/blog/[article-slug] → 文章详情
maidinhk.com/category/[cat-slug] → 分类页
maidinhk.com/tag/[tag-slug] → 标签页设计原则:
- 扁平化:URL 层级不超过 3 层,方便搜索引擎爬取
- 语义化:slug 使用英文关键词,如
/blog/maid-cost-hong-kong - 一致性:所有 URL 遵循相同的命名规则,不用大写、不用下划线
内链策略
内链(Internal Linking)是 SEO 中被低估但极其重要的一环。我的内链策略基于 Topic Cluster 模型:
Pillar Page(支柱页)
每个核心主题有一个综合性的支柱页面,覆盖该主题的所有方面。比如:
- "Complete Guide to Hiring a Maid in Hong Kong"
Cluster Content(集群内容)
围绕支柱页,创建多篇深入的子话题文章:
- "Maid Salary Guide 2024"
- "How to Choose a Maid Agency"
- "Visa Requirements for Domestic Helpers"
链接规则
- 每篇集群文章 必须链接回 对应的支柱页
- 支柱页 链接到所有 相关集群文章
- 相关的集群文章之间也会 互相链接
这样形成了一个网状结构,帮助搜索引擎理解内容之间的关系,也帮助用户发现更多相关内容。
Sitemap 管理
在 Contentful 中管理内容的一个好处是,我可以通过代码自动生成 sitemap.xml。每次发布或更新文章后,我会:
- 手动检查新页面是否已被纳入 sitemap
- 在 Google Search Console 中提交更新后的 sitemap
- 使用 GSC 的「网址检查」功能请求对新页面建立索引
这个过程虽然有些手动,但能确保每一篇新内容都尽快被 Google 发现和收录。
实际效果
使用 Contentful + Next.js 的组合后:
- 页面加载时间:首屏 < 1.5 秒(通过 SSG 实现)
- Lighthouse 分数:Performance 95+、SEO 100
- 内容发布效率:从写完到上线只需要 5 分钟
- 灵活性:可以随时调整内容模型,不需要修改代码