パンくずリストとSEO|階層設計が先、マークアップは後
三橋竜彰・ ・ 更新: 2026-09-20
パンくずリストは、そのページがサイトのどこにあるかを示す階層リンクです。「ホーム > カテゴリ > 記事」のように並ぶあれです。
SEOの文脈で語られるとき、話がマークアップ(BreadcrumbList の書き方)に寄りがちなのですが、実際に効くかどうかを決めているのはその前の階層設計です。この記事はその順序で書きます。
運営者はSEO検定1級・ウェブ解析士として、AIでサイト設計から記事作成・公開・分析までを自動化する仕組みを自作し、複数の自社サイトで運用しています。本サイトのパンくずもその仕組みで出力しています。
パンくずリストがSEOで持つ役割
3つあります。
1. 階層を検索エンジンに伝える:どのページが上位で、どれが配下かという関係が明示されます。リンクだけでも推測はされますが、パンくずは意図として書かれた構造です。
2. 検索結果にパスが表示される:Googleの検索結果で、URLの代わりに「サイト名 > カテゴリ」のような表示が出ることがあります。何のページかが分かりやすくなります。
3. 上位階層への内部リンクになる:全記事からカテゴリページへリンクが張られる状態になります。個別に張らなくても、カテゴリが全記事から参照されます。
3つ目が実務では一番大きいと考えています。記事が増えるほどカテゴリページへ集まるリンクも増えるので、サイト全体の導線が自動で整います。内部リンク全体の考え方は内部リンクとは?SEO・AI検索での役割と最適化の考え方に整理しました。
先に階層を決める
パンくずの中身は、サイトの階層構造そのものです。だから構造が決まっていなければ、パンくずも書けません。
つまずくのはここです。カテゴリが場当たりに増えている、1記事が複数カテゴリに属している、階層が深すぎる——このいずれかがあると、パンくずは「とりあえず並べたもの」になり、上の3つの役割を果たしません。
1つの記事が複数のカテゴリに属する設計は、パンくずと相性が悪いです。経路が一意に決まらないため、どれを出すかを決める規則が別途必要になります。
運営者は主カテゴリを1つだけ持つ形にしています。記事は必ず1つのクラスターに属し、パンくずはその経路をそのまま出します。判断が入らないので、実装も検証も単純になります。クラスターの切り方は内部リンクの設計:サイト構造とクラスターの作り方で扱っています。
階層の深さは、ホーム > カテゴリ > 記事の3階層で足りることがほとんどです。それ以上深くする必要が出たら、まずカテゴリの粒度を疑ってください。
マークアップ
階層が決まったら実装です。2つを書きます。
HTMLのパンくず
読者に見えるほうです。<nav> で囲み、リンクを並べます。
<nav aria-label="パンくず">
<ol>
<li><a href="/">ホーム</a></li>
<li><a href="/blog/">ブログ</a></li>
<li>パンくずリストとSEO</li>
</ol>
</nav>
現在地(最後の項目)はリンクにしません。自分自身へのリンクになるためです。
JSON-LD の BreadcrumbList
機械向けです。position は1から始まる連番で、HTMLと同じ順序・同じ項目にします。
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "ホーム", "item": "https://example.com/" },
{ "@type": "ListItem", "position": 2, "name": "ブログ", "item": "https://example.com/blog/" },
{ "@type": "ListItem", "position": 3, "name": "パンくずリストとSEO" }
]
}
最後の項目に item を書かない形が一般的です(現在地なのでURLを持たせない)。JSON-LD全般の書き方と検証はJSON-LDの書き方|どの型を使い、どう検証するかにまとめました。
よくある3つの間違い
| 間違い | 何が起きるか |
|---|---|
| HTMLとJSON-LDの項目名が違う | 可視の内容と構造化データが食い違う |
| 全ページで同じパンくずを出す | 階層の情報を持たないので意味がない |
| 現在地をリンクにしている | 自己参照リンクが全ページに増える |
1つ目が一番多いです。HTMLはテンプレート、JSON-LDはプラグインというように出所が分かれていると、片方だけ直したときにずれます。
対処は単純で、同じデータから両方を生成することです。運営者のサイトでは、記事のカテゴリ情報1つからHTMLとJSON-LDの両方を組み立てているので、原理的にずれません。手で二重管理している場合は、公開後に本番HTMLを見て一致を確認してください。
確認のしかた
本番のページで、この3つを見ます。
- HTMLにパンくずが出ているか:ページのソースを表示して
<nav>を探す - JSON-LDが出ているか:
application/ld+jsonを検索し、BreadcrumbList があるか - 項目名と順序が一致しているか:1と2を並べて比べる
ローカルでは正しくても、ビルドや配信の途中で欠けることがあります。本番で見るのが要点です。sitemap.xmlの作り方|ツールで作るか、自動生成にするかでも同じ話を書きましたが、生成物は本番で確認しないと分かりません。
よくある質問
パンくずリストはSEOに効果がありますか?
順位が直接上がる仕掛けではありませんが、3つの役割があります。サイトの階層構造を検索エンジンに明示すること、検索結果でURLの代わりにパスが表示されること、そして全記事から上位カテゴリへの内部リンクになることです。実務では3つ目が一番大きく、記事が増えるほどカテゴリページへの導線が自動で整います。
HTMLとJSON-LDの両方が必要ですか?
両方書いてください。HTMLは読者向け、JSON-LDは機械向けで役割が違います。重要なのは項目名と順序を一致させることです。HTMLはテンプレート、JSON-LDはプラグインというように出所が分かれていると、片方だけ直したときにずれます。同じデータから両方を生成する形にすると原理的にずれません。
1つの記事が複数のカテゴリに属する場合はどうしますか?
パンくずの経路が一意に決まらなくなるため、どれを出すかを決める規則が別途必要になります。運営者は主カテゴリを1つだけ持つ設計にしています。記事は必ず1つのクラスターに属し、パンくずはその経路をそのまま出すので、判断が入らず実装も検証も単純になります。
パンくずの階層は何段まで作るべきですか?
ホーム、カテゴリ、記事の3階層で足りることがほとんどです。それ以上深くする必要が出たときは、まずカテゴリの粒度を疑ってください。階層の深さより、経路が一意に決まる設計かどうかのほうが重要です。
現在地の項目もリンクにすべきですか?
リンクにしません。自分自身へのリンクになるためで、それが全ページに存在する状態になります。JSON-LD側も、最後の項目にはitemプロパティを書かない形が一般的です。
まとめ
- パンくずはサイトの階層構造そのもの。構造が決まっていなければ書けない
- 実務で一番効くのは全記事から上位カテゴリへの内部リンクになること
- 記事は主カテゴリを1つだけ持たせる。経路が一意に決まると実装も検証も単純になる
- HTMLとJSON-LDは同じデータから生成し、項目名と順序を一致させる
- 現在地はリンクにしない。確認は本番のHTMLで行う
マークアップの書式より、その前の階層設計に時間を使ってください。