SKILL.md
唯讀
名稱
seo-schema
描述
偵測、驗證並產生 Schema.org 結構化資料。偏好 JSON-LD 格式。當使用者提到「schema」、「結構化資料」、「豐富結果」、「JSON-LD」或「標記」時使用。
Schema 標記分析與產生
偵測
- 掃描頁面原始碼中的 JSON-LD
<script type="application/ld+json"> - 檢查 Microdata(
itemscope、itemprop) - 檢查 RDFa(
typeof、property) - 一律推薦 JSON-LD 為主要格式(Google 偏好的格式)
驗證
- 檢查每個 schema 類型的必要屬性
- 驗證是否符合 Google 支援的豐富結果類型
- 測試常見錯誤:
- 缺少 @context
- 無效的 @type
- 錯誤的資料類型
- 佔位文字
- 相對 URL(應為絕對 URL)
- 無效的日期格式
- 標記已棄用的類型(見下方)
Schema 類型狀態(截至 2026 年 6 月)
請閱讀 ../seo/references/schema-types.md 取得完整清單。關鍵規則:
啟用中(可自由推薦):
Organization、LocalBusiness、SoftwareApplication、WebApplication、Product(自 2025 年 4 月起需搭配 Certification 標記)、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 搜尋結果頁面不再有豐富結果效益;將現有 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 豐富結果中棄用/移除;不建議用於搜尋結果頁面功能。
- Search Console / Rich Results Test / 外觀篩選器對 CourseInfo、EstimatedSalary、LearningVideo、SpecialAnnouncement、VehicleListing 的支援已於 2025 年 9 月 9 日移除;Practice Problem 支援已於 2026 年 1 月 6 日移除。
僅支援 Dataset Search:
- Dataset:未停用,由 Google Dataset Search 使用,但 Google 搜尋無豐富結果表面。請勿建議移除,彷彿它已被終止。
仍受支援(請勿標記):
- QAPage(2026 年 3 月 24 日擴充留言串屬性)、DiscussionForumPosting、Education Q&A(測驗 /
eduQuestionType=Flashcard)。對於電子商務,成人產品需要 hasAdultConsideration(2026 年 5 月 22 日新增;值為https://schema.org/SexualContentConsideration)。
產生
為頁面產生 schema 時:
- 從內容分析識別頁面類型
- 選擇適當的 schema 類型
- 產生包含所有必要 + 建議屬性的有效 JSON-LD
- 僅包含真實、可驗證的資料。使用佔位符並清楚標示供使用者填寫
- 在呈現前驗證輸出
常見 Schema 範本
Organization
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "[公司名稱]",
"url": "[網站 URL]",
"logo": "[標誌 URL]",
"contactPoint": {
"@type": "ContactPoint",
"telephone": "[電話]",
"contactType": "客戶服務"
},
"sameAs": [
"[Facebook URL]",
"[LinkedIn URL]",
"[Twitter URL]"
]
}
LocalBusiness
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "[商家名稱]",
"address": {
"@type": "PostalAddress",
"streetAddress": "[街道]",
"addressLocality": "[城市]",
"addressRegion": "[州]",
"postalCode": "[郵遞區號]",
"addressCountry": "TW"
},
"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": "[標誌 URL]"
}
}
}
輸出
SCHEMA-REPORT.md:偵測與驗證結果generated-schema.json:可立即使用的 JSON-LD 片段
驗證結果
| Schema | 類型 | 狀態 | 問題 |
|---|---|---|---|
| ... | ... | ✅/⚠️/❌ | ... |
建議
- 缺少的 schema 機會
- 需要修正的驗證問題
- 用於實作的產生程式碼
錯誤處理
| 情境 | 動作 |
|---|---|
| URL 無法連線 | 回報連線錯誤及狀態碼。建議驗證 URL 並檢查頁面是否需要驗證。 |
| 未找到 schema 標記 | 回報未偵測到 JSON-LD、Microdata 或 RDFa。根據頁面內容分析推薦適當的 schema 類型。 |
| 無效的 JSON-LD 語法 | 解析並回報具體語法錯誤(缺少括號、結尾逗號、未加引號的鍵)。提供修正後的 JSON-LD 輸出。 |
| 偵測到已棄用的 schema 類型 | 標記該棄用類型及其退役日期。推薦目前的替代類型,若無替代則建議移除。 |






