AIO AIO Field Notes

FAQPage/Articleスキーマ(構造化データ)の実装方法【初心者向け】

構造化データとは、ページの内容を「これはタイトルです」「これは質問と回答です」というように、 人間だけでなくAIやプログラムにもわかる形でラベル付けする仕組みです。 難しく聞こえますが、実際に書くのはページの見た目とは別に追加する、短いコードの塊だけです。

なぜ必要なのか

人間はページを見れば「これは記事のタイトルだな」「ここはよくある質問のコーナーだな」と 直感的に理解できます。しかしAIやプログラムは、HTMLの見た目だけでは それが何の情報なのか正確に判断しづらいことがあります。 構造化データは、この認識のズレを減らすための「注釈」のようなものです。 schema.orgという共通の語彙(ボキャブラリー)を使って書きます。

JSON-LDという書き方

構造化データにはいくつかの書き方がありますが、現在最も一般的なのは 「JSON-LD」という形式です。ページの<head>タグの中に、 以下のような専用のコードブロックとして追加します。

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "記事タイトル"
}
</script>

ページの見た目には一切影響しません。裏側でAI・検索エンジンだけに情報を伝える仕組みです。

Article(記事)の書き方

通常の記事には、以下のような項目を書きます。

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "記事タイトルをここに",
  "description": "記事の要約を1〜2文で",
  "datePublished": "2026-08-11",
  "dateModified": "2026-08-11",
  "author": { "@type": "Person", "name": "運営者名" },
  "publisher": { "@type": "Organization", "name": "サイト名" }
}

headline(タイトル)、datePublished(公開日)、 author(著者)あたりが基本項目です。日付は「2026-08-11」のような形式で書きます。

FAQPage(よくある質問)の書き方

ページ内に質問と回答の形式のコンテンツがある場合、FAQPageというタイプが使えます。 AIの回答内でそのまま引用されやすい形式と言われています。

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "質問文をここに",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "回答文をここに"
      }
    }
  ]
}

重要な注意点: ここに書く質問・回答は、実際にページの本文にも 表示されている内容と一致させる必要があります。表示されていない内容にだけ マークアップを付けることは、schema.orgのガイドライン上推奨されていません。

実装後の確認方法

書いたコードが正しいかどうかは、Googleが無料で提供している検証ツールで確認できます。

本サイトの実例

本サイトの各記事ページには、実際にArticleとFAQPageのJSON-LDを実装しています。 ブラウザで記事ページを開き、右クリック→「ページのソースを表示」から application/ld+jsonで検索すると、実際のコードを確認できます。