mcpField
S
seo-aeo-schema-generator

seo-aeo-schema-generator

github.com/sickn33营销与增长48.7k67 次安装今天更新
代码仓库

关于 seo-aeo-schema-generator

seo-aeo-schema-generator 是根据页面内容生成或检查结构化数据标记的技能,面向 SEO 与内容团队。它涵盖多种 Schema 类型、字段核查、JSON-LD 输出和实施说明。

主要功能

  1. 01生成受支持类型的 JSON-LD
  2. 02检查必填及建议字段
  3. 03标记缺失数据和未替换占位符
  4. 04校验 URL、日期和价格
  5. 05提供实施与测试指导

适用场景

  1. 01为落地页添加结构化数据
  2. 02准备 Article 或 Product 标记
  3. 03检查 FAQ 与面包屑 Schema
  4. 04发布前核对标记

安装

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill seo-aeo-schema-generator

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
aggregate-rating-schema.json
breadcrumb-schema.json
article-schema.json
howto-schema.json
review-schema.json
faq-schema.json
organization-schema.json
product-schema.json
webpage-schema.json
website-schema.json

详细介绍

Schema Generator 技能

描述

当用户希望为任意页面生成、编写或验证结构化数据标记时,启用此技能。 触发短语包括:“generate schema”“create JSON-LD”“schema markup for”“structured data for”“FAQ schema”“product schema”“article schema”“help Google understand my page”“rich results schema”“schema generator: [type]”“add schema to [page]”。


输入格式

{
  "page_type": "landing-page",
  "schema_types": ["Article"],
  "page_data": {
    "url": "string — canonical URL of the page",
    "title": "string — page title",
    "description": "string — page description",
    "primary_keyword": "string",
    "date_published": "string — ISO format: YYYY-MM-DD",
    "date_modified": "string — ISO format: YYYY-MM-DD",
    "author_name": "string — for Article schema",
    "brand_name": "string",
    "brand_url": "string — homepage URL",
    "logo_url": "string — absolute URL to brand logo",
    "product": {
      "name": "string",
      "description": "string",
      "image_url": "string",
      "price": "decimal",
      "currency": "string — ISO 4217, e.g. USD, GBP",
      "availability": "InStock | OutOfStock | PreOrder",
      "sku": "string — optional"
    },
    "reviews": [
      {
        "author": "string",
        "rating": "integer — 1 to 5",
        "review_body": "string",
        "date": "string — YYYY-MM-DD"
      }
    ],
    "aggregate_rating": {
      "rating_value": "decimal — e.g. 4.7",
      "review_count": "integer",
      "best_rating": "integer — usually 5",
      "worst_rating": "integer — usually 1"
    },
    "faqs": [
      {
        "question": "string",
        "answer": "string"
      }
    ],
    "how_to": {
      "name": "string — title of the how-to",
      "description": "string",
      "total_time": "string — ISO 8601 duration, e.g. PT30M",
      "steps": [
        {
          "name": "string — step title",
          "text": "string — step instructions"
        }
      ]
    },
    "breadcrumbs": [
      {
        "position": "integer — 1, 2, 3...",
        "name": "string — label",
        "url": "string — absolute URL"
      }
    ]
  }
}

Schema 类型菜单

此技能支持以下 Schema 类型。 单个页面可请求多个类型:

Schema 类型适用场景可能的搜索用途(不保证)
Article博客文章、支柱页面、新闻Article 富媒体搜索结果、头条新闻
FAQPage任意页面上的常见问题解答部分Google 目前已不提供 FAQ 富媒体搜索结果
HowTo分步指南Google HowTo 富媒体搜索结果已停用
Product产品或定价页面SERP 中的价格、供货情况、评分
Review单个产品或服务的评价SERP 中的星级评分
AggregateRating有多条评价的页面带评价数量的星级评分
BreadcrumbList任何具有导航层级的页面SERP URL 中显示的面包屑路径
Organization首页或“关于”页面品牌知识面板信号
WebPage需要基本结构化身份信息的任何页面帮助爬虫更好地理解页面
WebSite仅限首页网站身份信息;站内搜索框已停用

仅使用页面可见内容支持的类型。没有确凿保证表明 FAQPage 或 HowTo 会促使 AI 提取信息。Google 于 2023 年停用了 HowTo 富媒体搜索结果,于 2024 年停用了站内链接搜索框,并于 2026 年 5 月停用了 FAQ 富媒体搜索结果。Schema.org 有效性与 Google 功能资格是两回事。


富媒体搜索结果资格规则

Google 要求每种 Schema 类型都包含特定字段,才能获得富媒体搜索结果资格。 缺少必需字段会影响相应功能,但不会影响整个页面的索引。请查看 Google 当前的功能指南;下表是内容检查清单,并非完整的资格验证器。

FAQPage
字段状态备注
@type必需必须为 FAQPage
mainEntity必需Question 对象数组
name必需问题文本
acceptedAnswer必需包含 text 的 Answer 对象
最少问题数内容检查至少有一个真实的问题和答案;不要凭空规定必须有两个问题
答案长度建议每个答案少于 300 个单词
Article

Google 目前将以下 Article 属性列为建议项,而非必需项:标题、代表性图片、发布日期/修改日期和作者身份。请填写可获得且真实的信息;不要虚构发布商徽标或日期。头条新闻不要求 Article 标记。

产品
字段状态说明
name必需产品名称
image必需绝对 URL
description建议
offers有条件产品摘要需要包含名称,以及 offers、review 或 aggregateRating;商品列表有单独的规则
price有条件对选定的定价 Offer 路径而言必需
priceCurrency有条件对有定价的 offers 使用 ISO 4217;请核实特定功能的规则
availability建议Schema.org 可用性 URL
aggregateRating建议解锁星级评分显示
HowTo
字段状态说明
name必需操作指南的标题
step必需HowToStep 对象数组
text必需每个步骤的说明
totalTime建议ISO 8601 时长
image建议如有,每个步骤对应的图片
BreadcrumbList
字段状态说明
itemListElement必需ListItem 对象数组
position必需整数,从 1 开始
name必需面包屑标签
item必需每个面包屑对应的绝对 URL

输出结构

技能必须始终按以下确切格式输出:

# Schema Markup Output

**Page:** [page title]
**URL:** [url]
**Schema Types Generated:** [list all types]
**Potential Rich Results (eligibility unverified until tested):** [list eligible rich results]
**Structured Content Types Added:** [list AEO-relevant schema types]

---

## Validation Summary

| Schema Type       | Required Fields Complete | Rich Result Eligible | Issues Found |
|-------------------|--------------------------|----------------------|--------------|
| [type]            | ✅ / ❌                  | ✅ / ❌              | [n or none]  |
| [type]            | ✅ / ❌                  | ✅ / ❌              | [n or none]  |

---

## Issues Found

[If no issues: ✅ All schema types passed validation.]

**Issue:** [Specific field missing or incorrect]
**Schema Type:** [type]
**Severity:** Required / Recommended
**Fix:** [Exact instruction — what to add or change]

---

## JSON-LD Output

Place all script blocks inside the `<head>` of your HTML.
Use one `<script>` block per schema type.

### [Schema Type 1]
```html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "[type]",
  [all populated fields from references/ template]
}
</script>
```

### [Schema Type 2]
```html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "[type]",
  [all populated fields]
}
</script>
```

---

## Implementation Instructions

1. Copy each `<script>` block above
2. Paste inside the `<head>` tag of your HTML —
   after the `<title>` tag, before `</head>`
3. One script block per schema type —
   multiple types may also be combined in an @graph with stable @id links
4. Test immediately using Google's Rich Results
   Test: https://search.google.com/test/rich-results
5. Test using Schema.org Validator:
   https://validator.schema.org
6. After deploying, request re-indexing in
   Google Search Console

---

## Testing Checklist

- [ ] All required fields populated for each schema type
- [ ] No placeholder text left in any field
- [ ] All URLs are absolute (https://...) not relative (/page)
- [ ] Date fields use ISO 8601 format (YYYY-MM-DD)
- [ ] Price uses decimal format (e.g. 49.00 not $49)
- [ ] Currency uses ISO 4217 code (USD not $)
- [ ] FAQPage reflects real visible questions and answers
- [ ] Serialize JSON safely and escape < as \u003c when embedding to prevent a closing script tag from ending the block
- [ ] Every script block or @graph parses correctly
- [ ] Tested in Google Rich Results Test ✅
- [ ] Tested in Schema.org Validator ✅

References 文件夹

references/ 文件夹包含所有受支持架构类型的示例性、未经验证的 JSON-LD 模板。 脚本会将这些模板用作基础结构,并 使用页面数据填充其中的内容。

references/
├── faq-schema.json
├── article-schema.json
├── product-schema.json
├── review-schema.json
├── aggregate-rating-schema.json
├── howto-schema.json
├── breadcrumb-schema.json
├── organization-schema.json
├── webpage-schema.json
└── website-schema.json

每个模板都包含所有必需和建议字段,其占位值采用以下格式: "{{field_name}}"。项目中不包含 schema_builder.py。请构建类型化对象并将其序列化;不要使用文本替换。数组/对象字段必须保持为数组/对象,不能转换为带引号的 JSON 字符串。


执行步骤

  1. 读取 page_type 和 schema_types — 如果 schema_types 为空,请使用 Schema Type Menu,根据 page_type 推荐合适的类型,然后再继续
  2. 对每个请求的架构类型,从 references/ 加载 对应模板
  3. 将 page_data 中的所有字段映射到 模板占位符
  4. 根据 Rich Result Eligibility Rules 检查每个必需字段 — 输出前将所有缺失的必需字段 标记为问题
  5. 检查每个建议字段 — 如果缺失则标记为警告,但不阻止输出
  6. 验证所有 URL 均为绝对 URL、 所有日期均为 ISO 8601 格式、 所有价格均为十进制格式
  7. 为每种架构类型生成一个简洁的 <script> 块
  8. 构建 Validation Summary 表
  9. 列出所有问题,注明严重程度和准确的修复说明
  10. 编写 Implementation Instructions 和 Testing Checklist
  11. 使用提供的页面数据填充选定的参考模板,验证必需字段,并将未解决的占位符显示为阻止性问题。仅将项目提供的架构辅助工具用作补充检查;切勿编造评价、评分或产品声明。

已连接技能

  • 接收以下内容的输出:seo-aeo-landing-page-writer、 seo-aeo-blog-writer、seo-aeo-content-quality-auditor、 seo-aeo-internal-linking
  • 输出提供给:编排工作流 — 发布检查清单前的最后一步

适用场景

在为页面添加或验证 JSON-LD 结构化数据,且提供的可见内容支持所选架构类型时使用。

限制

  • 结构化数据必须与页面上可见且真实的内容相符;JSON-LD 有效并不保证会显示富媒体搜索结果、被编入索引或展示。

评论

支持 Markdown