パンくずリスト

ウェブページに表示されたパンくずリスト

ページに表示されるパンくずリストは、そのページがサイト階層内のどこに位置するかを示しており、ユーザーはサイトを効果的に理解し、移動できます。ユーザーは、パンくずリスト内の最後のパンくずから順番にさかのぼることで、サイトの階層内を 1 レベルずつ上に移動できます。

構造化データを追加する方法

構造化データは、ページに関する情報を提供し、ページ コンテンツを分類するための標準化されたデータ形式です。構造化データを初めて使用する場合は、構造化データの仕組みについてをご覧ください。

構造化データの作成、テスト、リリースの概要は次のとおりです。ウェブページに構造化データを追加するための手順ガイドについては、構造化データの Codelab をご覧ください。

  1. 必須プロパティを追加します。ページ上の構造化データを配置する場所について詳しくは、JSON-LD 構造化データ: ページでの挿入場所をご覧ください。
  2. ガイドラインを遵守します。
  3. リッチリザルト テストでコードを検証します。
  4. 構造化データが含まれているページを数ページ導入し、URL 検査ツールを使用して、Google でページがどのように表示されるかをテストします。Google がページにアクセスでき、robots.txt ファイル、noindex タグ、またはログイン要件によってページがブロックされていないことを確認します。ページが正常に表示される場合は、Google に URL の再クロールを依頼できます。
  5. 今後の変更について Google への情報提供を続けるには、サイトマップを送信することをおすすめします。これは、Search Console Sitemap API で自動化できます。

Google 検索では、検索結果内のウェブページからの情報を分類する際に、ページの本文内のパンくずリスト マークアップを使用します。以下の使用例に示すように、ユーザーがページにアクセスするときの検索クエリはさまざまです。異なる検索で同じウェブページが返されたとしても、そのコンテンツは Google 検索クエリのコンテキスト内でパンくずリストにより分類されています。ancillaryjustice.html というページは、検索のコンテキストに応じて下記のようなパンくずリストとともに表示される場合があります。

実際のパンくずリストによく見られるのが、URL パスをそのまま反映させたものです。ただ、URL パスの一部は、ページのウェブサイト内での位置づけを理解するうえでは役に立ちません。たとえば、「/pages/books/catcher_in_the_rye.html」という URL の場合、「pages」の部分は役に立ちません。パンくずリストには URL 構造をそのまま反映させるのではなく、ユーザーがそのウェブページにたどり着くまでの一般的な経路を示すことをおすすめします。

単一のパンくずリスト

「2014 Nebula Award best novel」のように、年とジャンルに基づいて受賞作を検索した場合は、たとえば次のようなパンくずリストが生成されます。

BooksScience Fiction › Award Winners

JSON-LD

JSON-LD を使用してパンくずリストを記述した例です。


<html>
  <head>
    <title>Award Winners</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "BreadcrumbList",
      "itemListElement": [{
        "@type": "ListItem",
        "position": 1,
        "name": "Books",
        "item": "https://example.com/books"
      },{
        "@type": "ListItem",
        "position": 2,
        "name": "Science Fiction",
        "item": "https://example.com/books/sciencefiction"
      },{
        "@type": "ListItem",
        "position": 3,
        "name": "Award Winners"
      }]
    }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa

RDFa を使用してパンくずリストを記述した例です。


<html>
  <head>
    <title>Award Winners</title>
  </head>
  <body>
    <ol vocab="https://schema.org/" typeof="BreadcrumbList">
      <li property="itemListElement" typeof="ListItem">
        <a property="item" typeof="WebPage"
            href="https://example.com/books">
          <span property="name">Books</span></a>
        <meta property="position" content="1">
      </li>
      ›
      <li property="itemListElement" typeof="ListItem">
        <a property="item" typeof="WebPage"
            href="https://example.com/books/sciencefiction">
          <span property="name">Science Fiction</span></a>
        <meta property="position" content="2">
      </li>
      ›
      <li property="itemListElement" typeof="ListItem">
        <span property="name">Award Winners</span>
        <meta property="position" content="3">
      </li>
    </ol>
  </body>
</html>

microdata

microdata を使用してパンくずリストを記述した例です。


<html>
  <head>
    <title>Award Winners</title>
  </head>
  <body>
    <ol itemscope itemtype="https://schema.org/BreadcrumbList">
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <a itemprop="item" href="https://example.com/books">
            <span itemprop="name">Books</span></a>
        <meta itemprop="position" content="1" />
      </li>
      ›
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <a itemscope itemtype="https://schema.org/WebPage"
           itemprop="item" itemid="https://example.com/books/sciencefiction"
           href="https://example.com/books/sciencefiction">
          <span itemprop="name">Science Fiction</span></a>
        <meta itemprop="position" content="2" />
      </li>
      ›
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <span itemprop="name">Award winners</span>
        <meta itemprop="position" content="3" />
      </li>
    </ol>
  </body>
</html>

HTML

視覚的なデザインの一部としてページ内に挿入する HTML パンくずリストのブロックの例です。

<html>
  <head>
    <title>Award Winners</title>
  </head>
  <body>
    <ol>
      <li>
        <a href="http://www.example.com/books">Books</a>
      </li>
      <li>
        <a href="http://www.example.com/sciencefiction">Science Fiction</a>
      </li>
      <li>
        Award Winners
      </li>
    </ol>
  </body>
</html>

複数のパンくずリスト

ページに移動する方法がサイト内に複数ある場合は、1 つのページに複数のパンくずリストを指定できます。次のパンくずリストは、受賞歴のある本のページにつながります。

BooksScience Fiction › Award Winners

次に示すのは、同じページにつながる別のパンくずリストです。

Literature › Award Winners

JSON-LD

JSON-LD を使用して複数のパンくずリストを記述した例です。


<html>
  <head>
    <title>Award Winners</title>
    <script type="application/ld+json">
    [{
      "@context": "https://schema.org",
      "@type": "BreadcrumbList",
      "itemListElement": [{
        "@type": "ListItem",
        "position": 1,
        "name": "Books",
        "item": "https://example.com/books"
      },{
        "@type": "ListItem",
        "position": 2,
        "name": "Science Fiction",
        "item": "https://example.com/books/sciencefiction"
      },{
        "@type": "ListItem",
        "position": 3,
        "name": "Award Winners"
      }]
    },
    {
      "@context": "https://schema.org",
      "@type": "BreadcrumbList",
      "itemListElement": [{
        "@type": "ListItem",
        "position": 1,
        "name": "Literature",
        "item": "https://example.com/literature"
      },{
        "@type": "ListItem",
        "position": 2,
        "name": "Award Winners"
      }]
    }]
    </script>
  </head>
  <body>
  </body>
</html>

RDFa

RDFa を使用して複数のパンくずリストを記述した例です。


<html>
  <head>
    <title>Award Winners</title>
  </head>
  <body>
    <ol vocab="https://schema.org/" typeof="BreadcrumbList">
      <li property="itemListElement" typeof="ListItem">
        <a property="item" typeof="WebPage"
            href="https://example.com/books">
          <span property="name">Books</span></a>
        <meta property="position" content="1">
      </li>
      ›
      <li property="itemListElement" typeof="ListItem">
        <a property="item" typeof="WebPage"
            href="https://example.com/books/sciencefiction">
          <span property="name">Science Fiction</span></a>
        <meta property="position" content="2">
      </li>
      ›
      <li property="itemListElement" typeof="ListItem">
        <a property="item" typeof="WebPage"
            href="https://example.com/books/sciencefiction/awardwinners">
          <span property="name">Award Winners</span></a>
        <meta property="position" content="3">
      </li>
    </ol>
    <ol vocab="https://schema.org/" typeof="BreadcrumbList">
      <li property="itemListElement" typeof="ListItem">
        <a property="item" typeof="WebPage"
            href="https://example.com/literature">
          <span property="name">Literature</span></a>
        <meta property="position" content="1">
      </li>
      ›
      <li property="itemListElement" typeof="ListItem">
        <span property="name">Award Winners</span>
        <meta property="position" content="2">
      </li>
    </ol>
  </body>
</html>

microdata

microdata を使用して複数のパンくずリストを記述した例です。


<html>
  <head>
    <title>Award Winners</title>
  </head>
  <body>
    <ol itemscope itemtype="https://schema.org/BreadcrumbList">
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <a itemprop="item" href="https://example.com/books">
            <span itemprop="name">Books</span></a>
        <meta itemprop="position" content="1" />
      </li>
      ›
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <a itemscope itemtype="https://schema.org/WebPage"
           itemprop="item" itemid="https://example.com/books/sciencefiction"
           href="https://example.com/books/sciencefiction">
          <span itemprop="name">Science Fiction</span></a>
        <meta itemprop="position" content="2" />
      </li>
      ›
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <a itemprop="item" href="https://example.com/books/sciencefiction/awardwinners">
          <span itemprop="name">Award Winners</span></a>
        <meta itemprop="position" content="3" />
      </li>
    </ol>
    <ol itemscope itemtype="https://schema.org/BreadcrumbList">
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <a itemprop="item" href="https://example.com/literature">
          <span itemprop="name">Literature</span></a>
        <meta itemprop="position" content="1" />
      </li>
      ›
      <li itemprop="itemListElement" itemscope
          itemtype="https://schema.org/ListItem">
        <span itemprop="name">Award Winners</span>
        <meta itemprop="position" content="2" />
      </li>
    </ol>
  </body>
</html>

HTML

視覚的なデザインの一部としてページ内に挿入する HTML パンくずリストのブロックの例です。

<html>
  <head>
    <title>Award Winners</title>
  </head>
  <body>
    <ol>
      <li>
        <a href="http://www.example.com/books">Books</a>
      </li>
      <li>
        <a href="http://www.example.com/books/sciencefiction">Science Fiction</a>
      </li>
      <li>
        Award Winners
      </li>
    </ol>
    <ol>
      <li>
        <a href="http://www.example.com/literature">Literature</a>
      </li>
      <li>
        Award Winners
      </li>
    </ol>
  </body>
</html>

ガイドライン

Google 検索にパンくずリストとともに表示されるようにするには、下記のガイドラインに準拠する必要があります。

構造化データタイプの定義

パンくずリストを指定するには、少なくとも 2 つの ListItems を含む BreadcrumbList を定義する必要があります。コンテンツがパンくずリストとともに表示されるようにするには、必須プロパティが必要です。

BreadcrumbList は、リスト内のすべての要素を保持するコンテナ アイテムです。BreadcrumbList の定義の全文は schema.org/BreadcrumbList で確認できます。

必須プロパティ
itemListElement

BreadcrumbList

特定の順序でリストされたパンくずリストの配列。各パンくずリストを指定するには、ListItem を使用します。次に例を示します。


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
  "itemListElement": [{
    "@type": "ListItem",
    "position": 1,
    "name": "Books",
    "item": "https://example.com/books"
  },{
    "@type": "ListItem",
    "position": 2,
    "name": "Authors",
    "item": "https://example.com/books/authors"
  },{
    "@type": "ListItem",
    "position": 3,
    "name": "Ann Leckie",
    "item": "https://example.com/books/authors/annleckie"
  }]
}

ListItem

ListItem には、リスト内の個々のアイテムに関する詳細情報を含めます。ListItem の定義の全文は schema.org/ListItem で確認できます。

必須プロパティ
item

URL または Thing のサブタイプ

パンくずを表すウェブページの URL。item の指定方法は次の 2 つです。

  • URL: ページの URL を指定します。次に例を示します。
    
    "item": "https://example.com/books"
  • Thing: 使用しているマークアップ形式に基づいて、ID で URL を指定します。
    • JSON-LD: @id を使用して URL を指定します。
    • microdata: href または itemid を使用して URL を指定します。
    • RDFa: abouthref または resource を使用して URL を指定します。

パンくずがパンくずリストの最後のアイテムである場合、item は必須ではありません。最後のアイテムに item が含まれていない場合、Google はそのページの URL を使用します。

name

Text

ユーザーに表示されるパンくずのタイトル。URL ではなく name のある Thing を使用して item を指定している場合、name は必須ではありません。

position

Integer

パンくずリスト内のパンくずの位置。位置が 1 の場合、リスト内の最初のパンくずを示します。

Search Console でリッチリザルトを監視する

Search Console は、Google 検索におけるページのパフォーマンスを監視できるツールです。Search Console に登録していなくても Google 検索結果に表示されますが、登録することにより、Google がサイトをどのように認識しているかを把握して改善できるようになります。次の場合は Search Console を確認することをおすすめします。

  1. 構造化データを初めてデプロイした後
  2. 新しいテンプレートをリリースした後やコードを更新した後
  3. トラフィックを定期的に分析する場合

構造化データを初めてデプロイした後

ページがインデックスに登録されたら、関連するリッチリザルトのステータス レポートを使用して、問題がないかどうかを確認します。有効なページが増え、エラーや警告が増えていない状態が理想的です。構造化データに問題が見つかった場合の手順は次のとおりです。

  1. エラーを修正します
  2. 公開 URL の検査を行い、問題が解決したかどうかを確認します。
  3. ステータス レポートを使用して検証をリクエストします。

新しいテンプレートをリリースした後やコードを更新した後

ウェブサイトに大幅な変更を加えた場合は、構造化データのエラーや警告が増加しないかどうか監視します。
  • エラーが増加した場合は、新しく公開したテンプレートが正常に機能していないか、既存のテンプレートの動作に問題が生じていることが原因と考えられます。
  • 有効な項目が減少している(エラーの増加と一致しない)場合は、ページに構造化データが埋め込まれていない可能性があります。URL 検査ツールを使用して問題の原因を特定します。

トラフィックを定期的に分析する場合

パフォーマンス レポートを使用して Google 検索のトラフィックを分析します。このデータから、検索でページがリッチリザルトとして表示される頻度、ユーザーがページをクリックする頻度、検索結果におけるページの平均掲載順位がわかります。Search Console API を使用して、このデータを自動的に取得することもできます。

トラブルシューティング

構造化データを実装する際に問題が発生した場合は、以下のリソースを確認してください。