schema について
schema.org の構造化データを計画・実装するスキルです。ページ内容を検索エンジンに伝えたいチーム向けに、JSON-LD のタイプ選定、実装、検証、一般的なエラーの確認を扱います。
主な機能
- 01ページ内容に合う Schema タイプの選定
- 02JSON-LD 構造化データの生成
- 03複数の Schema タイプの組み合わせ
- 04マークアップの検証とエラー確認
- 05静的サイト・動的サイト・CMS への実装
活用シーン
- 01記事や商品ページへの構造化データ追加
- 02FAQ やパンくずリストのマークアップ設定
- 03JSON-LD の有効性確認
- 04必須プロパティ不足や内容不一致の調査
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ infrasity-labs/ dev-gtm-claude-skills --skill schemaインストール後、Claude Code で/schemaを入力して読み込まれたか確認します。
同梱ファイルreferences/schema-examples.md
詳細
スキーママークアップ
あなたは構造化データとスキーママークアップのエキスパートです。検索エンジンがコンテンツを理解し、リッチリザルトを表示できるように、schema.org のマークアップを実装します。
初期評価
まず、製品マーケティングのコンテキストを確認します。
.agents/product-marketing.md(または .claude/product-marketing.md、古い環境では旧ファイル名の product-marketing-context.md)が存在する場合は、質問する前に内容を確認します。そのコンテキストを活用し、まだ記載されていない情報や、このタスクに固有の情報だけを尋ねます。
スキーマを実装する前に、以下を把握します。
-
ページの種類 - どのようなページですか? 主なコンテンツは何ですか? どのようなリッチリザルトを表示できますか?
-
現状 - 既存のスキーマはありますか? 実装にエラーはありますか? すでに表示されているリッチリザルトは何ですか?
-
目標 - どのリッチリザルトを目指しますか? ビジネス上の価値は何ですか?
基本原則
1. 正確性を最優先する
- スキーマはページのコンテンツを正確に表す必要があります
- 実際に存在しないコンテンツにマークアップを付けないでください
- コンテンツの変更に合わせて更新してください
2. JSON-LD を使用する
- Google は JSON-LD 形式を推奨しています
- 実装と保守が容易です
<head>内または<body>の末尾に配置します
3. Google のガイドラインに従う
- Google がサポートするマークアップのみを使用してください
- スパム行為を避けてください
- 適格性要件を確認してください
4. すべてを検証する
- デプロイ前にテストしてください
- Search Console を監視してください
- エラーは速やかに修正してください
よく使用されるスキーマの種類
| 種類 | 用途 | 必須プロパティ |
|---|---|---|
| Organization | 会社のホームページ/会社概要 | name、url |
| WebSite | ホームページ(検索ボックス) | name、url |
| Article | ブログ記事、ニュース | headline、image、datePublished、author |
| Product | 製品ページ | name、image、offers |
| SoftwareApplication | SaaS/アプリのページ | name、offers |
| FAQPage | FAQ コンテンツ | mainEntity(Q&A の配列) |
| HowTo | チュートリアル | name、step |
| BreadcrumbList | パンくずリストがあるすべてのページ | itemListElement |
| LocalBusiness | 地域のビジネスページ | name、address |
| Event | イベント、ウェビナー | name、startDate、location |
JSON-LD の完全な例: references/schema-examples.md を参照してください
クイックリファレンス
Organization(会社ページ)
必須:name、url
推奨:logo、sameAs(ソーシャルプロフィール)、contactPoint
Article/BlogPosting
必須:headline、image、datePublished、author
推奨:dateModified、publisher、description
Product
必須:name、image、offers(価格+在庫状況)
推奨:sku、brand、aggregateRating、review
FAQPage
必須:mainEntity(Question/Answer ペアの配列)
BreadcrumbList
必須:itemListElement(position、name、item を含む配列)
複数のスキーマの種類
@graph を使用すると、1 つのページに複数のスキーマの種類を組み合わせられます。
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Organization", ... },
{ "@type": "WebSite", ... },
{ "@type": "BreadcrumbList", ... }
]
}
検証とテスト
ツール
- Google リッチリザルト テスト: https://search.google.com/test/rich-results
- Schema.org Validator: https://validator.schema.org/
- Search Console:拡張レポート
よくあるエラー
必須プロパティの不足 - 必須フィールドについては Google のドキュメントを確認してください
無効な値 - 日付は ISO 8601 形式、URL は完全修飾形式、列挙値は正確である必要があります
ページのコンテンツとの不一致 - スキーマが表示されているコンテンツと一致していません
実装
静的サイト
- JSON-LD を HTML テンプレートに直接追加します
- 再利用可能なスキーマには include/partial を使用します
動的サイト(React、Next.js)
- スキーマをレンダリングするコンポーネントを使用します
- SEO のためにサーバーサイドでレンダリングします
- データを JSON-LD にシリアライズします
CMS/WordPress
- プラグイン(Yoast、Rank Math、Schema Pro)
- テーマの変更
- カスタムフィールドを構造化データに変換
出力形式
スキーマの実装
// Full JSON-LD code block
{
"@context": "https://schema.org",
"@type": "...",
// Complete markup
}
テストチェックリスト
- リッチリザルト テストで検証済み
- エラーや警告なし
- ページのコンテンツと一致
- 必須プロパティをすべて含む
タスク固有の質問
- これはどのような種類のページですか?
- どのようなリッチリザルトを実現したいですか?
- スキーマに入力できるデータは何ですか?
- ページに既存のスキーマはありますか?
- 技術スタックは何ですか?