← 返回蜂巢洞察

如何将结构化数据(JSON-LD)添加到Next.js网站中并进行验证

结构化数据对搜索引擎来说一直都非常重要。当搜索引擎读取你的页面时,它看到的是HTML代码:标题、段落、日期以及名称等等。 结构化数据能够直接告诉搜索引擎这些内容的含义。例如,这个页面是一篇文章,这是它的标题,这篇文章是由某个人撰写的,并且发布于某个特定的日期。 对我来说,搜索引擎优化并不是一个需要简单勾选的步骤。我希望自己创建的产品和网站能够被人们找到,并且在被找到之后也能被正确理解。 因此,只要合适,我就会在每一页中添加结构化数据。而且我认为,随着人工智能系统开始根据网页内容来回答问题,结构化数据的重要性只会越来越明显,而不会减弱。 在Next.js应用程序中,没有任何工具会自动为你生成这些

结构化数据对搜索引擎来说一直都非常重要。当搜索引擎读取你的页面时,它看到的是HTML代码:标题、段落、日期以及名称等等。

结构化数据能够直接告诉搜索引擎这些内容的含义。例如,这个页面是一篇文章,这是它的标题,这篇文章是由某个人撰写的,并且发布于某个特定的日期。

对我来说,搜索引擎优化并不是一个需要简单勾选的步骤。我希望自己创建的产品和网站能够被人们找到,并且在被找到之后也能被正确理解。

因此,只要合适,我就会在每一页中添加结构化数据。而且我认为,随着人工智能系统开始根据网页内容来回答问题,结构化数据的重要性只会越来越明显,而不会减弱。

在Next.js应用程序中,没有任何工具会自动为你生成这些结构化数据。你需要自己手动在需要添加这些数据的页面中插入一段JSON代码。

在这个教程中,你将了解什么是结构化数据,以及JSON-LD是如何工作的。随后,你还会学习如何在一个Next.js应用项目中使用结构化数据:包括如何创建一个可重复使用的`JsonLd`组件,这个组件可以安全地用于处理任何类型的数据;同时,你也会了解到如何在每次构建项目后验证这些结构化数据的正确性。

目录

先决条件

要跟随本文的步骤进行学习,您需要具备以下条件:

  • 一个使用Next.js应用框架、App Router以及TypeScript开发的网站。本文中的代码是在Next.js 16.4.0和React 19.3版本上测试过的。

  • 对服务器组件及动态路由有基本的了解。

  • 需要安装schema-dts包,该包能为结构化数据提供TypeScript类型定义。

请将schema-dts作为开发依赖项进行安装,因为它仅用于提供类型定义:

npm install -D schema-dts

示例中使用了博客数据。每当出现\Post()这个代码时,请使用您自己的数据源,比如内容管理系统、数据库或Markdown文件。

开发人员所需的结构化数据基础知识

如果您之前从未接触过结构化数据,那么这一部分的内容将帮助您理解后续的代码示例。

什么是结构化数据与JSON-LD

结构化数据是一种可供机器读取的信息描述方式。它能让搜索引擎直接了解“Jane Doe”是文章作者,“2026-09-01”是发表日期,而无需用户去猜测这些信息。

所使用的术语来源于Schema.org——这是一个定义了各种数据类型(如Article、Person和Organization)及其属性(如headline、author和datePublished)的公共词汇库。该标准由谷歌、微软、雅虎和Yandex共同推出,也是搜索引擎所期望使用的格式。

JSON-LD(用于链接数据的JavaScript对象表示法)就是一种编写结构化数据的方式。它是W3C标准,在网页中,它会被放在一个带有特定类型的

使用普通的 `JSON.stringify` 方法后,服务器会发送如下内容的 HTML:

浏览器会将第一个 `