博客引擎
规则
- MDX 内容:
content/blog/[slug].mdx—— 包含标题、描述、publishedAt、updatedAt、标签、图片等前端元数据 - 动态路由:
app/blog/[slug]/page.tsx—— 构建时获取 MDX,根据文件系统生成静态参数 - RSS 订阅源:在
/rss.xml生成feed.xml—— 每篇文章包含标题、描述、pubDate、链接、guid —— 构建时重新生成 - 站点地图:生成
sitemap.xml,包含所有博客 URL、最后修改日期、更改频率 —— 提交至 Google Search Console - JSON-LD 结构化数据:每篇文章使用
Article模式 —— 包含 headline、datePublished、dateModified、author、image、publisher - 相关文章:基于标签匹配 —— 查找共享 2 个以上标签的文章,若无则退而取最新文章 —— 显示 3 篇相关文章
- 目录:从 MDX 中的 H2/H3 标题自动生成 —— 在桌面上以粘性侧边栏形式渲染
- 分页:每页 10 篇文章,路径为
/blog/page/[num]—— 包含上一页/下一页链接以优化 SEO
前端元数据格式
title: "文章标题"
description: "不超过160个字符的元描述"
publishedAt: "2025-01-15"
updatedAt: "2025-02-01"
tags: ["nextjs", "react"]
image: "/blog/post-title/cover.jpg"
author: "作者姓名"
RSS 订阅源模式
从 API 路由提供或在构建时生成。必需字段:<title>、<link>、<description>,每篇文章包含 <item>,其中有 <guid>、<pubDate>。
避免
- 前端元数据中缺少
publishedAt—— 会破坏 RSS 和排序 - 不提交站点地图 —— Google 无法快速发现新文章
- 跳过 JSON-LD —— 会失去富片段资格
- 硬编码相关文章 —— 应使用标签匹配以实现自动相关性