mcpField
S
schema-markup

schema-markup

github.com/kostja94营销与增长1.1k1.3k 次安装3 天前更新
代码仓库

关于 schema-markup

schema-markup 是一项 SEO 技能,指导使用 JSON-LD 规划 Schema.org 结构化数据,适用于网站运营者和营销人员。它涵盖页面类型选择、搜索结果功能映射,以及搜索引擎和 AI 搜索的适用性判断。

主要功能

  1. 01按页面选择 Schema 类型
  2. 02映射 Schema 与搜索结果功能
  3. 03JSON-LD 实施指导
  4. 04区分搜索引擎支持情况
  5. 05面向 GEO 的结构化数据指导

适用场景

  1. 01规划新网站的 Schema
  2. 02为产品或内容页选择标记
  3. 03检查富媒体搜索结果资格
  4. 04完善 AI 搜索所用结构化数据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/kostja94/marketing-skills --skill schema-markup

安装后在 Claude Code 中输入/schema-markup确认已加载。

详细介绍

SEO 页面内优化:Schema/结构化数据

指导实施用于富媒体摘要、增强型搜索结果和生成式引擎优化(GEO)的 Schema.org 结构化数据(JSON-LD)。

调用时:首次使用时,如果有帮助,可以先用 1–2 句话介绍此技能涵盖的内容及其重要性,然后提供主要输出。后续使用或用户要求跳过时,直接提供主要输出。

范围(页面内 SEO)

  • Schema 标记:用于富媒体搜索结果、AI 搜索可见性和机器可读内容的 Schema.org 类型
  • Schema.org 与搜索引擎:Schema.org 定义了 800 多种类型;各搜索引擎仅支持其中一部分类型用于富媒体搜索结果

Schema.org 与搜索引擎支持情况

Schema.org 与 Google 结构化数据并未完全对齐。 Schema.org 是开放词汇表(800 多种类型);Google、Bing 和其他搜索引擎各自只支持经过筛选的一部分类型用于富媒体搜索结果。

搜索引擎支持情况说明
Google仅支持部分类型只有列入 Google 搜索图库的类型才能生成富媒体搜索结果。即使 Schema.org 标记在技术上正确,只要类型不在 Google 的列表中,就不会生成增强型摘要。
Bing支持部分类型;支持情况不同支持 JSON-LD、Microdata、RDFa、Open Graph。某些类型(如 Product、Offer)仅支持特定格式。请查看 Bing 网站管理员文档。
其他搜索引擎各不相同即使不显示富媒体搜索结果,Yandex、DuckDuckGo 和 AI 搜索工具(Perplexity 等)也可能使用 Schema.org 来理解内容。

实际影响:针对内容类型实施 Schema.org 标记。如果 Google 不为该类型显示富媒体搜索结果,Bing 或 AI 系统仍可能使用这些数据。请务必参照 Google 开发者文档,核实 Google 特定富媒体搜索结果的展示资格。

富媒体搜索结果:Google 支持情况(2026)

影响较大的类型:Product、Review snippets、Article/News、Video、Recipe、LocalBusiness、Event、Breadcrumb、Sitelinks searchbox、JobPosting。

支持有限或取决于具体情况:FAQ(许多查询中仅适用于政府/健康网站)、Education Q&A、Course、SoftwareApplication、Speakable(新闻)、DiscussionForumPosting。

已弃用:HowTo(截至 2023 年 9 月,已在所有设备上完全移除)、COVID 数据面板、某些仅适用于 AMP 的格式、data-vocabulary.org。

实施方式:优先使用 JSON-LD;包含 @context、@type 和稳定的 @id;日期采用 ISO 8601 格式;确保结构化数据与可见内容一致。使用 富媒体搜索结果测试进行验证。富媒体搜索结果最多可将 CTR 提高约 35%,并改善 AI 引用效果。

Schema ↔ SERP 功能 ↔ 富媒体搜索结果(关系密切)

Schema、SERP 功能和富媒体搜索结果之间关系密切。 对于大多数富媒体搜索结果,Schema 是必要条件。如果要争取某项 SERP 功能,请实施对应的 Schema 类型。完整的 SERP 功能列表和优化方法请参见 serp-features。

丰富结果与精选摘要
  • 丰富结果:由 Schema 增强的标准列表项(星级评分、面包屑、FAQ 下拉项、产品信息)。显示在自然搜索结果中;无需排名进入前 10。
  • 精选摘要:Google 提取的答案框,位于第零位。无需 Schema;内容结构很重要。Schema(FAQPage、HowTo、Article)有助于内容提取。
Schema 类型SERP 功能 / 丰富结果备注
FAQPagePAA、精选摘要FAQ 下拉项;问答式摘要。许多网站(如政府或医疗网站)的资格受到限制
BreadcrumbList面包屑在搜索结果中显示路径
AggregateRating, Review评论 / 星级星级评分
HowTo曾为丰富结果(2023 年 9 月弃用)不再生成 Google 丰富结果;Bing/AI 仍可能使用
Article深度文章、摘要文章丰富结果
VideoObject视频视频缩略图;参见 video-optimization
Product, Offer购物、产品产品/购物结果
Recipe食谱食谱丰富结果
JobPostingGoogle Jobs职位列表
Event活动活动丰富结果
WebSite + SearchAction站点链接搜索框品牌查询的站点链接
Organization, Person知识面板实体信息;参见 entity-seo

工作流:1)使用 serp-features 确定目标 SERP 功能;2)在此表中查找 Schema 类型;3)使用 Rich Results Test 实施并验证。

生成式引擎优化(GEO)

GEO = 优化内容,使 AI 系统(Google AI Overviews、Perplexity、ChatGPT、Gemini)在生成答案时选择、引用和摘录你的内容。结构化数据使内容可供机器读取;AI 引擎能够更准确地提取和引用内容。GEO 的关键 Schema 类型:Organization、Person/Author、WebSite、WebPage、FAQPage、HowTo、Article、Product、AggregateRating。完整的 GEO 策略请参见 generative-engine-optimization。

初步评估

**项目背景:**如果根目录中存在 contextus.md,请先阅读,并仅加载与此任务相关的模块。若没有 Contextus,请使用现有项目材料或用户提供的信息,并询问缺失信息;不要创建并行的上下文系统。

确定:

  1. 页面类型:文章、产品、FAQ、Organization、JobPosting、Event 等。
  2. 内容:要描述哪些实体
  3. 目标:丰富摘要、AI Overview 可见度、知识面板

Schema 类型分类

核心类型(通用)
类型用例
Organization全站使用;公司信息、徽标、sameAs;位置见下文
WebSite全站使用;搜索操作、站点名称;在首页与 Organization 配合使用
Article博客文章、新闻、工具简介
BreadcrumbList面包屑导航
FAQPageFAQ 部分;触发 PAA 式结果
Person作者信息;与 Article 配合使用
ImageObject丰富结果的图像元数据
HowTo教程、分步指南。注意:Google 已于 2023 年 9 月完全弃用适用于所有设备的 HowTo 丰富结果;Bing/AI 仍可能使用 HowTo Schema
专用类型(特定场景)
类型用例
JobPosting招聘网站、AI 职位匹配
Product电商产品页面
Event活动页面、票务(不适用于普通博客)
SoftwareApplication应用页面、工具页面
LocalBusiness本地商家页面
Dataset数据平台、数据集
DiscussionForumPosting论坛、社区帖子
Quiz教育、抽认卡
MathSolver数学工具
CaseStudy案例研究页面
Recipe食谱、膳食计划、烹饪说明

规则:大多数网站使用核心类型。仅当页面内容符合条件时才使用专用类型(例如,不要在博客上使用 Event,也不要在产品页面上使用 JobPosting)。

组织与网站 Schema 的放置位置
位置OrganizationWebSite备注
首页最低要求最低要求首页至少添加 Organization 和 WebSite。Organization 用于描述网站所属实体;WebSite 可启用站点链接搜索框并标识网站。
根布局 / 全局最佳选择最佳选择将其放在全站布局中(例如 layout.tsx、_document、全局页眉/页脚),使 Schema 出现在每个页面上。Google 使用找到的第一个实例;每个网站添加一个实例即可。
关于页面不需要不需要关于页面使用 AboutPage Schema(页面专属:标题、描述、作者、关于内容)。Organization 属于实体级,而非页面级,因此不要只将其放在关于页面中。参见 about-page-generator。

实现方式:在 <head> 中添加 JSON-LD;使用 @id(例如 https://example.com/#organization)关联 Organization ↔ WebSite ↔ WebPage,构建实体图谱。参见 entity-seo,了解 @id 和知识面板。

操作:网站/产品类型 → Schema 映射

使用此表推荐适合某个网站的专属 Schema 类型。 根据网站内容和产品类型,匹配最相关的 Schema。如有疑问,先从核心类型(Organization、WebSite、Article)开始;只有在内容明确符合时,才添加专属类型。

网站/产品类型推荐的专属 Schema原因
AI 膳食规划工具、食谱网站、美食博客、烹饪应用Recipe食材、说明、烹饪时间、份量——与美食/膳食内容高度相关。Google 支持 Recipe 富媒体搜索结果。
招聘网站、招聘平台、招聘页面JobPosting职位名称、公司、地点、薪资、雇佣类型。Google Jobs 的必需项。
活动平台、票务、网络研讨会、会议Event日期、地点、价格。仅用于实际活动页面。
SaaS、应用、Chrome 扩展程序、工具、软件产品页面SoftwareApplication应用名称、类别、评分、价格、操作系统。适用于产品/功能页面。
电商产品页面Product价格、库存情况、品牌、评论。与 Offer、AggregateRating 搭配使用。
论坛、社区、Reddit 风格社区、问答平台DiscussionForumPosting帖子内容、作者、评论。适用于用户生成的讨论内容。
数据平台、数据集仓库、Scale AI / Surge AIDataset数据集名称、创建者、许可证、分发格式。适用于数据目录页面。
教育网站、抽认卡、Quizlet 风格平台Quiz问题和答案对。适用于教育类问答内容。
数学求解器、计算器、方程工具MathSolver数学题目输入、解答输出。适用于数学工具。
餐厅、本地服务、门店查询工具LocalBusiness地址、营业时间、NAP。适用于本地 SEO。
案例研究、客户案例页面CaseStudy客户、成果、方法。适用于 B2B 案例研究。
常见问题页面、产品常见问题、支持常见问题FAQPage问题和 acceptedAnswer 对。可触发类似 PAA 的搜索结果。
教程、操作指南、分步指南HowTo步骤、工具、时间。注意:Google 已于 2023 年 9 月完全弃用 HowTo 富媒体搜索结果;Bing/AI 可能仍会读取此 Schema。可考虑用 FAQPage 替代
新闻文章、新闻稿NewsArticle新闻内容使用此类型,而非 Article。
视频页面、播客单集VideoObject / PodcastEpisode适用于视频/音频内容。有关 VideoObject、缩略图和精彩片段,请参阅 video-optimization。

示例:

  • AI 膳食规划工具(例如生成每周膳食计划和食谱)→ 在每个食谱/膳食页面添加 Recipe Schema;落地页使用 Article 或 WebPage
  • AI 写作工具 → 产品页面使用 SoftwareApplication;博客使用 Article
  • 招聘 SaaS → 职位列表页面使用 JobPosting;产品页面使用 SoftwareApplication
  • 食谱博客 → 每篇食谱文章使用 Recipe;非食谱文章使用 Article

输出:推荐 Schema 时,请说明:(1) 哪些专属类型适合该网站/产品;(2) 哪些页面类型应使用哪些 Schema;(3) 全站应添加哪些核心类型(Organization、WebSite、BreadcrumbList)。

Article / BlogPosting / NewsArticle:类型选择与实现

选择与内容匹配的最具体类型:

类型使用场景
BlogPosting非正式博客文章;个人作者;定期更新
Article正式、常青内容;工具介绍;百科全书式内容
NewsArticle时效性新闻;知名出版商

必需属性:headline(最多 110 个字符)、image(宽度至少 1200px;绝对 URL)、datePublished(ISO 8601)、author(Person 或 Organization)、publisher(带有 logo 的 Organization)。

建议属性:dateModified、description、mainEntityOfPage(规范 URL)。

为提高 CTR 而显示日期:Google 建议页面上只显示一个日期。如果 datePublished 和 dateModified 都可见,Google 可能会在 SERP 中选错日期——Search Engine Land 观察到 CTR 下降约 22%。最佳实践:如果存在 dateModified,则显示它;否则显示 datePublished。在 JSON-LD 中保留两者;此规则仅适用于可见日期。

JSON-LD 示例(BlogPosting):

{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "The Ultimate SEO Checklist for 2025",
  "description": "A complete guide to optimizing blog posts for search and AI.",
  "image": "https://example.com/image.jpg",
  "datePublished": "2025-01-15T09:00:00Z",
  "dateModified": "2025-02-01T14:30:00Z",
  "author": { "@type": "Person", "name": "Jane Doe", "url": "https://example.com/author/jane" },
  "publisher": { "@type": "Organization", "name": "Example", "logo": { "@type": "ImageObject", "url": "https://example.com/logo.png" } }
}

通过 <script type="application/ld+json"> 放入 <head>。对于文章页面,使用 og:type: article,并添加 og:article:published_time、og:article:modified_time、og:article:author。参见 article-page-generator、open-graph。

BreadcrumbList

用于面包屑导航。Schema 必须与可见的面包屑完全一致。有关 UI、位置和语义 HTML,请参见 breadcrumb-generator。

要求指南
格式<script type="application/ld+json"> 中的 JSON-LD
URL每个条目均使用带有 https:// 的绝对 URL
位置从 1 开始的连续整数
匹配Schema 必须与可见的面包屑完全一致

JSON-LD 示例:

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com/" },
    { "@type": "ListItem", "position": 2, "name": "Category", "item": "https://example.com/category/" },
    { "@type": "ListItem", "position": 3, "name": "Current Page", "item": "https://example.com/category/current-page/" }
  ]
}

多个路径:当页面可通过多个路径访问时(例如,产品属于多个类别),Google 支持在同一页面上使用多个 BreadcrumbList 对象。请使用 BreadcrumbList 对象数组。

最佳实践

原则指南
准确性数据必须与页面上可见的内容一致;绝不添加不可见或误导性数据
完整性包含每种类型的所有必需属性
最具体的类型适用时优先使用 NewsArticle,而非 Article
JSON-LD首选格式;放入 <script type="application/ld+json">
实体的 @id对 Organization、Person 使用 @id,以支持实体关联;参见 entity-seo
分阶段实现先添加必需属性,再添加可选属性以优化
验证使用 Rich Results Test 和 Schema Markup Validator 进行测试
inLanguage(多语言)添加 "inLanguage": "en-US"(IETF BCP 47)以匹配 hreflang;按区域本地化名称、描述、FAQ,以生成富摘要
多语言 Schema(inLanguage)

对于多语言网站,在 JSON-LD 中添加 inLanguage,以加强语言定位。与 hreflang 值保持一致(例如,hreflang="zh-CN" 对应 "inLanguage": "zh-CN")。

本地化 Schema 数据:针对每种区域设置翻译结构化数据字段(name、description、FAQ acceptedAnswer 等),以提高该语言的富摘要 CTR。

支持 inLanguage 的类型:Article、BlogPosting、WebApplication、FAQPage、HowTo、Product、Organization。

实现工作流

  1. 分析页面类型和内容;选择匹配的 Schema 类型
  2. 选择格式——推荐 JSON-LD(Google、Bing、AI 工具均支持)
  3. 编写结构化数据;从必需属性开始
  4. 验证:Rich Results Test、Schema Markup Validator
  5. 部署并监控:通过 Search Console 增强型报告进行监控

常见错误及修复方法

错误修复方法
数据与可见内容不符Schema 必须仅描述用户看到的内容
缺少必需属性查阅每种类型对应的 Google/Schema.org 文档
页面类型错误非活动页面不要使用 Event;产品页面不要使用 JobPosting
格式/语法错误验证 JSON-LD;检查引号、方括号和逗号
标记过度仅标记相关内容;避免堆砌无关类型

实现

Next.js(元数据)
export const metadata = {
  other: {
    'script:ld+json': JSON.stringify({
      "@context": "https://schema.org",
      "@type": "Article",
      "headline": "...",
      "description": "...",
      "inLanguage": "en-US",
      "image": "https://example.com/image.jpg",
      "datePublished": "2024-01-01T00:00:00Z",
      "dateModified": "2024-01-15T00:00:00Z",
      "author": { "@type": "Person", "name": "..." },
      "publisher": { "@type": "Organization", "name": "...", "logo": { "@type": "ImageObject", "url": "..." } }
    }),
  },
};
HTML(通用)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "...",
  "description": "...",
  "inLanguage": "en-US",
  "author": { "@type": "Person", "name": "..." },
  "publisher": { "@type": "Organization", "name": "...", "logo": { "@type": "ImageObject", "url": "..." } }
}
</script>

验证工具

工具用途
Google 富媒体搜索结果测试检查 Google 是否能生成富媒体搜索结果
Schema 标记验证器根据 Schema.org 规范进行验证
Search Console查看增强型报告;持续监控有效性

输出格式

  • 先给出行动建议:使用“网站/产品类型 → Schema 映射”表,推荐适用于该网站的专属 Schema(例如,AI 膳食规划器 → Recipe;SaaS 工具 → SoftwareApplication)
  • Schema 类型建议(核心或专属)
  • 页面级映射:指定各页面使用哪种 Schema
  • 包含必需属性的 JSON-LD 结构
  • 验证步骤
  • 参考资料:Schema.org、Google 结构化数据、Bing 标记

相关技能

  • article-page-generator:文章结构;Article/BlogPosting/NewsArticle Schema;日期显示
  • serp-features:强相关——Schema 映射到 SERP 功能;参见上方映射表
  • faq-page-generator:FAQPage Schema;FAQ 内容结构
  • howto-section-generator:HowTo 区块组件(步骤、JSON-LD);HowTo 与 FAQPage 的区别
  • breadcrumb-generator:BreadcrumbList Schema 实现
  • featured-snippet:用于摘要的 FAQPage、HowTo
  • video-optimization:VideoObject、视频站点地图、缩略图、关键时刻
  • entity-seo:用于实体识别的 Organization、Person;@id;知识面板
  • homepage-generator:在首页或根布局中添加 Organization + WebSite Schema
  • indexing:用于 JobPosting、BroadcastEvent 的 Google Indexing API

评论

支持 Markdown