当用户问豆包"有什么好用的在线工具"、问ChatGPT"推荐一个JSON-LD生成器"时,AI是怎么知道你的网站的?
答案可能让大多数站长意外:AI不是读你的内容,而是读你的结构化数据。
如果你的网页没有JSON-LD,在AI搜索引擎面前就是一张白纸——内容再好,它也不知道你是谁、你提供什么、你值不值得被引用。
这篇教程把JSON-LD这件事讲透。从原理到代码,从类型选择到验证工具,看完就能直接上手。
一、JSON-LD 到底是什么?
JSON-LD 全称是 JSON for Linking Data,是 Google、Bing、Yandex 等搜索引擎共同推荐的结构化数据格式。
简单说:它是你写给AI看的一份"自我介绍"。
普通用户看到的是漂亮的网页。但AI搜索引擎看到的,是HTML源码里的文本和标记。如果没有结构化数据,AI只能"猜"——你页面上写了一堆"我们",它不知道你是一家公司还是一个个人博客;你列了三个功能,它不知道这是个产品还是服务。
JSON-LD 用机器能读懂的格式,明确告诉AI:
- 这是什么类型的实体(组织?产品?文章?服务?)
- 有什么属性(名称、地址、价格、评分?)
- 和其他实体有什么关系
一个最简单的例子
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "栈上月明软件科技",
"url": "https://zsoftym.com"
}
</script>
就这三行,告诉AI:我们是一个组织,叫这个名字,官网是这个地址。
有了这个,AI在回答"西安有哪些软件公司"时,就有了数据支撑可以引用你。
二、为什么 AI 搜索引擎这么依赖 JSON-LD?
要理解这个问题,得先明白AI搜索引擎和传统搜索引擎的区别。
传统SEO的逻辑
百度/Google的搜索流程:
- 爬虫抓取页面
- 分析关键词密度、外链数量、页面权重
- 返回一个结果列表,用户自己点
这个流程里,搜索引擎不需要"理解"你的内容——它只需要计算关键词匹配度。
AI搜索的逻辑
ChatGPT、豆包、Kimi的搜索流程:
- 接收用户问题
- 检索相关信息源
- 理解内容,生成答案
- 引用来源,直接给用户答案
关键差异在第三步:AI需要理解内容,才能生成答案。它要搞清楚:
- 这个页面讲的是什么?(主题)
- 这是一个公司还是一个产品?(实体类型)
- 它的核心属性是什么?(名称、地址、功能)
- 它和用户问题的相关性如何?(匹配度)
JSON-LD 就是在回答这些问题的"标准格式"。AI拿到你的JSON-LD,一秒就知道你是谁、你提供什么,不需要再去猜。
实测数据
我们团队用GEO检测器跑了100多个网站,发现:
- 有JSON-LD的网站:在AI搜索中被引用的概率是没有的3-5倍
- JSON-LD类型匹配页面内容的网站:引用准确率比乱写的提高60%以上
- 完全没有JSON-LD的网站:大部分在AI搜索中"隐形"
这不是理论,是实测数据。
三、JSON-LD 怎么写?常用类型完整代码
JSON-LD 基于 Schema.org vocabulary(词表),有几百种类型。但实际用到的就那么几种。下面逐个讲,每个都给完整代码,复制就能用。
1. Organization(组织/公司)
适用页面: 首页、关于页
告诉AI你是谁、做什么的、怎么联系你。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "西安栈上月明软件科技有限公司",
"alternateName": "栈上月明",
"url": "https://zsoftym.com",
"logo": "https://zsoftym.com/images/logo.png",
"description": "专注中小企业数字化开发与AI智能体落地",
"address": {
"@type": "PostalAddress",
"addressLocality": "西安",
"addressRegion": "陕西",
"addressCountry": "CN"
},
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+86-17629020227",
"email": "guohao@zsymtech.cn",
"contactType": "customer service",
"availableLanguage": ["Chinese", "English"]
},
"sameAs": [
"https://github.com/ZSoftYM",
"https://www.zhihu.com/org/zhan-shang-yue-ming"
]
}
</script>
关键字段说明:
name:公司全称,必须和你对外使用的一致url:官网地址logo:Logo图片URL,AI引用时可能显示sameAs:你在其他平台的链接(GitHub、知乎等),帮AI建立品牌实体关联contactPoint:联系方式,客服/销售都可以
2. WebSite(网站)
适用页面: 首页
告诉AI这是一个网站,以及是否有搜索功能。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "栈上月明",
"url": "https://zsoftym.com",
"potentialAction": {
"@type": "SearchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://zsoftym.com/search?q={search_term_string}"
},
"query-input": "required name=search_term_string"
}
}
</script>
说明: 如果你的网站有搜索功能,SearchAction 会让AI知道,这在某些场景下会被AI引用。没有搜索功能的网站可以不加 potentialAction。
3. WebApplication(在线工具/应用)
适用页面: 工具页、产品页
你做了一个在线工具、SaaS产品或Web应用,用这个类型告诉AI。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebApplication",
"name": "GEO友好度检测器",
"url": "https://xingtulink.com/tools/geo-checker/",
"applicationCategory": "DeveloperApplication",
"operatingSystem": "Any",
"description": "免费检测网站对AI搜索引擎的友好程度,从结构化数据、Meta标签、内容语义、AI可读性四个维度评分",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "CNY"
},
"featureList": "结构化数据检测、Meta标签分析、内容语义评估、AI可读性评分",
"browserRequirements": "需要现代浏览器,支持JavaScript",
"publisher": {
"@type": "Organization",
"name": "西安栈上月明软件科技有限公司",
"url": "https://zsoftym.com"
}
}
关键字段说明:
applicationCategory:应用类别,常用值有DeveloperApplication、DesignApplication、BusinessApplication、GameApplication等offers.price:如果是免费工具,写"0",AI搜索中"免费"是个高权重词featureList:功能列表,用逗号分隔,AI会直接提取publisher:发布者,指向你的Organization
4. Article(文章)
适用页面: 博客文章、新闻页、教程页
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "JSON-LD 结构化数据:AI认识你的第一步",
"description": "从零学会写JSON-LD,含完整代码示例和常见错误避坑",
"image": "https://zsoftym.com/images/article-cover.jpg",
"datePublished": "2026-08-27",
"dateModified": "2026-08-27",
"author": {
"@type": "Organization",
"name": "栈上月明软件科技",
"url": "https://zsoftym.com"
},
"publisher": {
"@type": "Organization",
"name": "栈上月明软件科技",
"logo": {
"@type": "ImageObject",
"url": "https://zsoftym.com/images/logo.png"
}
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://zsoftym.com/blog/json-ld-tutorial"
}
}
关键字段说明:
headline:文章标题,必须和页面<title>一致datePublished/dateModified:发布和修改时间,AI偏好新鲜内容author:作者,可以是 Person 或 Organizationimage:封面图URL,AI引用时可能显示mainEntityOfPage:指向这个文章的规范URL
5. Service(服务)
适用页面: 服务介绍页
你提供的不是产品,是服务(咨询、开发、设计等),用这个类型。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Service",
"name": "AI智能体定制开发",
"description": "为中小企业提供AI智能体落地服务,包括需求分析、方案设计、开发部署和培训",
"provider": {
"@type": "Organization",
"name": "西安栈上月明软件科技有限公司",
"url": "https://zsoftym.com"
},
"areaServed": {
"@type": "Country",
"name": "中国"
},
"serviceType": "软件开发",
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "服务清单",
"itemListElement": [
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "需求分析与方案设计"
}
},
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "智能体开发与部署"
}
},
{
"@type": "Offer",
"itemOffered": {
"@type": "Service",
"name": "培训与技术支持"
}
}
]
}
}
6. BreadcrumbList(面包屑导航)
适用页面: 所有有多级路径的页面
面包屑帮AI理解你的网站结构和页面层级关系。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "首页",
"item": "https://zsoftym.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "博客",
"item": "https://zsoftym.com/blog/"
},
{
"@type": "ListItem",
"position": 3,
"name": "JSON-LD教程",
"item": "https://zsoftym.com/blog/json-ld-tutorial"
}
]
}
说明: position 从1开始递增,name 是面包屑文字,item 是对应URL。这个类型在Google搜索中会直接显示为面包屑导航样式。
7. FAQPage(常见问题)
适用页面: 有FAQ内容的页面
如果你页面有问答内容,必须用这个类型。这是AI最容易引用的格式之一。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "JSON-LD和Microdata有什么区别?",
"acceptedAnswer": {
"@type": "Answer",
"text": "JSON-LD是用JSON格式写的结构化数据,放在<script>标签里,不影响页面展示。Microdata是直接在HTML标签上加属性。两者功能相同,但JSON-LD更易维护,Google官方推荐。"
}
},
{
"@type": "Question",
"name": "一个页面可以放多个JSON-LD吗?",
"acceptedAnswer": {
"@type": "Answer",
"text": "可以。你可以用多个<script type=\"application/ld+json\">标签,分别描述不同的实体。也可以用@graph数组把多个对象放在一个JSON-LD里。"
}
},
{
"@type": "Question",
"name": "JSON-LD对AI搜索引擎真的有用吗?",
"acceptedAnswer": {
"@type": "Answer",
"text": "有用。JSON-LD是AI搜索引擎理解你网站的核心方式之一。实测数据显示,有JSON-LD的网站被AI引用的概率是没有的3-5倍。"
}
}
]
}
关键字段说明:
mainEntity:问题列表,每个问题是一个Question对象name:问题文字acceptedAnswer.text:答案文字,可以包含HTML标签(<br>、<a>等)
在Google搜索中,FAQPage会直接显示为展开式问答样式,点击率非常高。
8. HowTo(操作指南)
适用页面: 教程、指南、步骤类内容
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "如何给你的网站添加JSON-LD",
"description": "三步完成JSON-LD结构化数据的添加",
"totalTime": "PT10M",
"step": [
{
"@type": "HowToStep",
"name": "确定页面需要的Schema类型",
"text": "根据页面内容选择对应的Schema类型。首页用Organization,工具页用WebApplication,文章页用Article,FAQ页用FAQPage。"
},
{
"@type": "HowToStep",
"name": "编写JSON-LD代码",
"text": "按照Schema.org规范编写JSON-LD代码,确保所有必填字段完整。可以参考本文的完整代码示例。"
},
{
"@type": "HowToStep",
"name": "验证并部署",
"text": "使用Google Rich Results Test或Schema Markup Validator验证代码正确性,确认无误后部署到生产环境。"
}
]
}
关键字段说明:
totalTime:预计耗时,格式是ISO 8601持续时间(PT10M= 10分钟)step:步骤列表,每个步骤是HowToStep对象name:步骤标题,text:步骤详情
HowTo在Google搜索中会显示为编号步骤,AI搜索引擎特别喜欢引用这种格式。
四、多个 JSON-LD 怎么放?用 @graph
一个页面往往需要多个JSON-LD。比如首页需要Organization + WebSite,工具页需要WebApplication + BreadcrumbList。
方式一:多个 <script> 标签
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "栈上月明"
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "栈上月明"
}
</script>
方式二:用 @graph 数组(推荐)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"name": "栈上月明",
"url": "https://zsoftym.com"
},
{
"@type": "WebSite",
"name": "栈上月明",
"url": "https://zsoftym.com"
}
]
}
</script>
方式二更干净,所有实体在一个JSON-LD里,维护方便。
五、常见错误与避坑
错误1:@type 类型和页面内容不匹配
错误示例: 产品页写了 Organization
后果: AI会困惑,降低对你网站的信任度
正确做法: 每个页面用最匹配的Schema类型。首页用 Organization,产品页用 Product 或 WebApplication,文章页用 Article,FAQ页用 FAQPage。
错误2:必填字段缺失
错误示例: Article 没有 headline、author、datePublished
后果: 验证工具报错,Google不会显示富媒体结果
正确做法: 查Schema.org文档,确保每个类型的必填字段都填了。上面给的代码示例都是完整的,可以直接用。
错误3:URL 写错或不可访问
错误示例: logo 字段写了个404的图片链接
后果: AI验证时发现链接无效,降低信任
正确做法: 确保所有URL都能访问。图片URL返回的应该是真实的图片文件,不是HTML页面。
错误4:name 和实际使用不一致
错误示例: JSON-LD里写"栈上月明科技有限公司",但官网上写"西安栈上月明软件科技有限公司"
后果: AI建立品牌实体时会困惑,认为不是同一个主体
正确做法: JSON-LD里的名称必须和你对外使用的一致,包括全称、简称、英文名。
错误5:JSON 格式错误
错误示例: 多了逗号、少了引号、用了中文标点
后果: JSON解析失败,整个JSON-LD无效
正确做法: 用JSON格式化工具检查(比如 jsonlint.com),确保格式正确。注意JSON不支持注释,不支持单引号,不支持尾逗号。
错误6:把JSON-LD放在里
错误示例: 放在页面中间的某个div里
后果: 有些爬虫可能抓不到
正确做法: 放在 <head> 标签里,确保所有爬虫都能读到。
错误7:重复定义同一实体
错误示例: 同一个页面写了两个 Organization,一个有 telephone 一个没有
后果: AI不知道哪个是真的
正确做法: 每个实体在一个页面只定义一次,用 @graph 合并多个类型。
六、验证工具
写完JSON-LD一定要验证。以下三个工具免费好用:
1. Google Rich Results Test
地址: search.google.com/test/rich-r…
输入URL或粘贴代码,Google会告诉你有哪些富媒体结果可以展示,有什么问题。
用途: 检查Google能否正确解析你的JSON-LD。
2. Schema Markup Validator
Schema.org官方验证工具,输入URL或代码,检查所有Schema类型是否正确。
用途: 全面检查Schema规范性。
3. Bing Webmaster Tools
Bing的站长工具里有Structured Data检测,可以查看Bing如何解析你的JSON-LD。
用途: 检查Bing的解析情况(ChatGPT的搜索数据来自Bing)。
4. 我们自己的GEO检测器
地址: xingtulink.com/tools/geo-c…
粘贴你的网页HTML源码,会从结构化数据、Meta标签、内容语义、AI可读性四个维度打分,告诉你哪里有问题。
用途: 综合评估GEO友好度,不只是JSON-LD。
七、实战:一个完整的首页JSON-LD方案
下面给一个企业官网首页的完整JSON-LD方案,包含Organization + WebSite + BreadcrumbList,复制改改就能用:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://zsoftym.com/#organization",
"name": "西安栈上月明软件科技有限公司",
"alternateName": "栈上月明",
"url": "https://zsoftym.com",
"logo": {
"@type": "ImageObject",
"url": "https://zsoftym.com/images/logo.png",
"width": 200,
"height": 60
},
"description": "专注中小企业数字化开发与AI智能体落地,提供网站、小程序、APP、系统定制开发及SEO/GEO优化服务",
"foundingDate": "2024",
"address": {
"@type": "PostalAddress",
"addressLocality": "西安",
"addressRegion": "陕西",
"addressCountry": "CN"
},
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+86-17629020227",
"email": "guohao@zsymtech.cn",
"contactType": "customer service",
"availableLanguage": ["Chinese", "English"]
},
"sameAs": [
"https://github.com/ZSoftYM",
"https://www.zhihu.com/org/zhan-shang-yue-ming",
"https://xingtulink.com"
]
},
{
"@type": "WebSite",
"@id": "https://zsoftym.com/#website",
"name": "栈上月明",
"url": "https://zsoftym.com",
"publisher": {
"@id": "https://zsoftym.com/#organization"
},
"inLanguage": "zh-CN"
},
{
"@type": "WebPage",
"@id": "https://zsoftym.com/#webpage",
"url": "https://zsoftym.com/",
"name": "栈上月明 - 中小企业数字化与AI智能体落地",
"isPartOf": {
"@id": "https://zsoftym.com/#website"
},
"about": {
"@id": "https://zsoftym.com/#organization"
},
"primaryImageOfPage": "https://zsoftym.com/images/og-image.jpg"
}
]
}
</script>
这个方案用了 @id 和 @ 引用来建立实体间的关联:
- Organization 的
@id是https://zsoftym.com/#organization - WebSite 的
publisher用@id引用 Organization - WebPage 的
about也引用 Organization
这样AI就知道:这个网站属于这个组织,这个页面是关于这个组织的。实体关系清晰,信任度更高。
八、总结
JSON-LD不难,但90%的网站都没做。
核心就三件事:
- 选对类型:首页Organization,产品页WebApplication/Product,文章页Article,FAQ页FAQPage
- 字段填全:必填字段必须有,选填字段尽量填
- 验证部署:用工具验证,确保格式正确,放在
<head>里
做完这三步,你的网站在AI搜索引擎面前就从"匿名"变成了"有身份"。AI知道你是谁、你提供什么、怎么联系你。
这是GEO优化的第一步,也是最重要的一步。
如果你在JSON-LD实施过程中遇到问题,或者想检测你网站的GEO友好度,欢迎使用我们的免费工具:
- GEO友好度检测器:xingtulink.com/tools/geo-c…
- JSON-LD生成器:xingtulink.com/tools/json-…
西安栈上月明软件科技有限公司,专注中小企业数字化开发与AI智能体落地。