seo-schema

seo-schema

热门

检测、验证并生成 Schema.org 结构化数据。优先使用 JSON-LD 格式。当用户提到“schema”、“结构化数据”、“富结果”、“JSON-LD”或“标记”时使用。

1.2万Star
1752Fork
更新于 2026/7/20
SKILL.md
readonly只读
name
seo-schema
description

检测、验证并生成 Schema.org 结构化数据。优先使用 JSON-LD 格式。 当用户提到“schema”、“结构化数据”、“富结果”、“JSON-LD”或“标记”时使用。

Schema 标记分析与生成

检测

  1. 扫描页面源码中的 JSON-LD <script type="application/ld+json">
  2. 检查 Microdata(itemscopeitemprop
  3. 检查 RDFa(typeofproperty
  4. 始终推荐 JSON-LD 作为主要格式(Google 明确偏好)

验证

  • 检查每种 schema 类型的必需属性
  • 对照 Google 支持的富结果类型进行验证
  • 测试常见错误:
    • 缺少 @context
    • 无效的 @type
    • 错误的数据类型
    • 占位符文本
    • 相对 URL(应为绝对 URL)
    • 无效的日期格式
  • 标记已弃用的类型(见下文)

Schema 类型状态(截至 2026 年 6 月)

阅读 ../seo/references/schema-types.md 获取完整列表。关键规则:

活跃(可自由推荐):

Organization、LocalBusiness、SoftwareApplication、WebApplication、Product(自 2025 年 4 月起包含认证标记)、ProductGroup、Offer、Service、Article、BlogPosting、NewsArticle、Review、AggregateRating、BreadcrumbList、WebSite、WebPage、Person、ProfilePage、ContactPage、VideoObject、ImageObject、Event、JobPosting、Course、DiscussionForumPosting

视频与专业类型(可自由推荐):

BroadcastEvent、Clip、SeekToAction、SoftwareSourceCode

参见 schema/templates.json 获取这些类型的现成 JSON-LD 模板。

JSON-LD 与 JavaScript 渲染: 根据 Google 2025 年 12 月的 JS SEO 指南,通过 JavaScript 注入的结构化数据可能面临延迟处理。对于时间敏感的标记(尤其是 Product、Offer),请将 JSON-LD 包含在初始服务器渲染的 HTML 中。

无富结果,如有用则保留:

  • FAQPage:Google 于 2026 年 5 月 7 日对所有网站停用了 FAQ 富结果(取代了 2023 年 8 月的政府/健康限制)。Google SERP 不再有富结果收益;将现有 FAQPage 标记为信息(而非严重)而非移除。对于真实的用户问答页面,请使用 QAPage

已弃用(绝不推荐):

  • HowTo:富结果于 2023 年 9 月移除
  • SpecialAnnouncement:于 2025 年 7 月 31 日弃用
  • CourseInfo、EstimatedSalary、LearningVideo:于 2025 年 6 月退役
  • ClaimReview:于 2025 年 6 月从富结果中退役
  • VehicleListing:于 2025 年 6 月从富结果中退役
  • Practice Problem:2025 年 11 月 5 日弃用通知;Search Console / Rich Results Test 支持于 2026 年 1 月 6 日移除
  • Book Actions:已从 Google 富结果中弃用/移除;不建议用于 SERP 功能。
  • Search Console / Rich Results Test / appearance-filter 对 CourseInfo、EstimatedSalary、LearningVideo、SpecialAnnouncement、VehicleListing 的支持已于 2025 年 9 月 9 日移除;Practice Problem 的支持已于 2026 年 1 月 6 日移除。

仅支持数据集搜索:

  • Dataset:未停止;由 Google Dataset Search 使用,无 Google 搜索富结果界面。不要建议移除,如同它已被废弃。

仍受支持(不要标记):

  • QAPage(2026 年 3 月 24 日扩展了评论线程属性)、DiscussionForumPosting、教育问答(Quiz / eduQuestionType=Flashcard)。对于电子商务,hasAdultConsideration(2026 年 5 月 22 日添加;值 https://schema.org/SexualContentConsideration)是成人产品的必需项。

生成

为页面生成 schema 时:

  1. 通过内容分析识别页面类型
  2. 选择合适的 schema 类型
  3. 生成包含所有必需和推荐属性的有效 JSON-LD
  4. 仅包含真实、可验证的数据。使用占位符并明确标记供用户填写
  5. 在呈现前验证输出

常见 Schema 模板

Organization

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "[公司名称]",
  "url": "[网站 URL]",
  "logo": "[Logo URL]",
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "[电话]",
    "contactType": "customer service"
  },
  "sameAs": [
    "[Facebook URL]",
    "[LinkedIn URL]",
    "[Twitter URL]"
  ]
}

LocalBusiness

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "[商家名称]",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "[街道]",
    "addressLocality": "[城市]",
    "addressRegion": "[州]",
    "postalCode": "[邮编]",
    "addressCountry": "US"
  },
  "telephone": "[电话]",
  "openingHours": "Mo-Fr 09:00-17:00",
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "[纬度]",
    "longitude": "[经度]"
  }
}

Article/BlogPosting

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "[标题]",
  "author": {
    "@type": "Person",
    "name": "[作者姓名]"
  },
  "datePublished": "[YYYY-MM-DD]",
  "dateModified": "[YYYY-MM-DD]",
  "image": "[图片 URL]",
  "publisher": {
    "@type": "Organization",
    "name": "[发布者]",
    "logo": {
      "@type": "ImageObject",
      "url": "[Logo URL]"
    }
  }
}

输出

  • SCHEMA-REPORT.md:检测和验证结果
  • generated-schema.json:可直接使用的 JSON-LD 片段

验证结果

Schema 类型 状态 问题
... ... ✅/⚠️/❌ ...

建议

  • 缺失的 schema 机会
  • 需要修复的验证问题
  • 用于实现的生成代码

错误处理

场景 操作
URL 无法访问 报告连接错误及状态码。建议验证 URL 并检查页面是否需要身份验证。
未找到 schema 标记 报告未检测到 JSON-LD、Microdata 或 RDFa。根据页面内容分析推荐合适的 schema 类型。
无效的 JSON-LD 语法 解析并报告具体的语法错误(缺少括号、尾随逗号、未引用的键)。提供修正后的 JSON-LD 输出。
检测到已弃用的 schema 类型 标记已弃用的类型及其退役日期。推荐当前的替代类型,若无替代则建议移除。