第3章: パンくずリスト構造化マークアップの実装方法
パンくずリストに構造化マークアップを適用する際、最も推奨されるのはJSON-LD形式での実装です。この方法では、ウェブページの<head>セクション内、あるいは<body>セクションの任意の場所に<script type=”application/ld+json”>タグを挿入し、その中に構造化データを記述します。
パンくずリストの構造化データは、Schema.orgの「BreadcrumbList」タイプを使用します。基本的な構造は以下のようになります。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "ホーム",
"item": "https://www.example.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "カテゴリ名",
"item": "https://www.example.com/category/"
},
{
"@type": "ListItem",
"position": 3,
"name": "サブカテゴリ名",
"item": "https://www.example.com/category/subcategory/"
},
{
"@type": "ListItem",
"position": 4,
"name": "現在のページ名",
"item": "https://www.example.com/category/subcategory/current-page.html"
}
]
}
</script>
このコード例を基に、各プロパティの役割を解説します。
-
"@context": "https://schema.org"使用する語彙がSchema.orgであることを示します。
-
"@type": "BreadcrumbList"このデータがパンくずリストであることを検索エンジンに伝えます。
-
"itemListElement"パンくずリストの各要素を配列として格納します。
各itemListElement内のListItemオブジェクトには、以下のプロパティが必須または推奨されます。
-
"@type": "ListItem"配列内の各要素がリストアイテムであることを示します。
-
"position"パンくずリスト内での項目の位置を示します。ホームが「1」から始まり、順に増えていきます。このプロパティは、リストの順序を検索エンジンに正確に伝えるために非常に重要です。
-
"name"パンくずリストに表示されるテキスト(例: 「ホーム」「カテゴリ名」)です。
-
"item"そのパンくず項目が指し示すページの完全なURLです。このURLは、そのページへの実際のリンクと一致している必要があります。
複数カテゴリに属する場合の考慮事項
一つの商品が複数のカテゴリに属するECサイトなどで、パンくずリストが複数存在することがあります。例えば、ある商品が「家電 > テレビ」と「セール品 > 家電」の両方に属する場合です。この場合、Googleのガイドラインでは、ページの内容を最もよく表す一つのパンくずリストに構造化マークアップを適用することを推奨しています。全てのパンくずパスを構造化すると、検索エンジンがどのパスを優先すべきか判断に迷い、期待通りのリッチスニペットが表示されない可能性があります。
ホームへのリンクの扱い
パンくずリストの最初の要素は通常「ホーム」であり、サイトのトップページへのリンクとなります。この「ホーム」も他のリストアイテムと同様にListItemとして記述し、positionを1、nameを「ホーム」などの適切な名称、itemをサイトのルートURLとします。
動的なコンテンツでの実装
WordPressやECサイトシステムなどのCMSを利用している場合、パンくずリストは動的に生成されることがほとんどです。この場合、テーマファイルやプラグインを通じて、上記のJSON-LD構造を動的に出力するように設定します。PHPやJavaScriptを使って、現在のページのパスや上位カテゴリの情報を取得し、適切なnameとitem、そして正しいpositionを設定してJSON-LDを生成します。
第4章: 実装時の注意点とベストプラクティス
パンくずリストの構造化マークアップを実装する際には、いくつかの重要な注意点とベストプラクティスがあります。これらを遵守することで、検索エンジンが正しくデータを解釈し、意図したリッチスニペットが表示される可能性を高めます。
正確な階層構造の反映
最も重要なのは、パンくずリストの構造化データが、ウェブサイトの実際のURL構造やナビゲーションの階層と正確に一致していることです。JSON-LDで記述されたitemListElementの順序(positionプロパティ)は、ユーザーに表示されるパンくずリストの順序と一致させる必要があります。もし、構造化データと表示が異なると、検索エンジンはデータを信頼せず、リッチスニペットを表示しないか、誤った情報を表示する可能性があります。
重複コンテンツや無限ループの回避
不適切なパンくずリストの実装は、重複コンテンツの問題を引き起こしたり、クローラーが無限ループに陥る原因となることがあります。特に、URLの正規化が正しく行われていない場合や、異なるパスから同じコンテンツにアクセスできる場合に注意が必要です。itemプロパティに指定するURLは、常に正規URL(canonical URL)と一致させ、重複するURLを避けるようにしましょう。また、現在のページ自身へのリンクを含めないことが一般的です。
モバイルフレンドリーな設計
構造化マークアップ自体は表示には直接関係ありませんが、パンくずリストの視覚的なデザインはモバイルデバイスでの閲覧を考慮する必要があります。狭い画面スペースで長いパンくずリストが複数行にわたって表示されると、ユーザーエクスペリエンスが損なわれます。CSSを使ってレスポンシブなデザインを適用し、必要に応じて「…」で省略表示するなどの工夫が求められます。
動的コンテンツでの実装の精密さ
CMSを使用している場合、パンくずリストの動的生成は便利ですが、その実装には細心の注意が必要です。特に、商品ページやブログ記事ページのように、複数のタグやカテゴリに属する可能性があるコンテンツでは、どのパスをパンくずリストのメインルートとして構造化するのかを明確に定義する必要があります。通常は、そのページが最も深く属するカテゴリパスを選択するか、主要なナビゲーションパスを優先します。プログラムによるJSON-LDの生成ロジックが、常に正確な階層とURLを返すことを確認してください。
パンくずリストの可視性
Googleのガイドラインでは、構造化データでマークアップされたコンテンツは、ウェブページ上でユーザーにも可視であるべきだとされています。パンくずリストがページ上のどこにも表示されていないにもかかわらず構造化データだけを記述することは、ガイドライン違反とみなされ、ペナルティの対象となる可能性があります。ユーザーが実際に利用できる、視覚的なパンくずリストと、それに付随する構造化マークアップは常にセットで考えるべきです。
第5章: Google検索セントラル(旧Google Developers)のガイドライン遵守
構造化マークアップを実装する上で、Googleが提供するガイドラインを遵守することは絶対不可欠です。Google検索セントラル(旧Google Developers)には、構造化データに関する詳細なガイドラインとベストプラクティスが公開されており、これを無視すると、リッチスニペットが表示されないだけでなく、手動ペナルティの対象となるリスクもあります。
ガイドラインの重要性
Googleのガイドラインは、構造化データを正しく実装し、検索エンジンがウェブコンテンツを適切に解釈できるようにするための基準を定めています。これには、以下の主要な原則が含まれます。
-
正確な情報の提供: 構造化データは、ページ上に表示されている情報と一致している必要があります。隠された情報や誤った情報を構造化データとして提供することは禁止されています。
-
関連性の確保: 構造化データは、そのページで提供される主要なコンテンツに関連している必要があります。
-
スパム行為の禁止: 意図的に検索ランキングを操作しようとする行為(例えば、関連性のないキーワードを構造化データに含めるなど)は厳しく禁止されています。
-
技術的要件の遵守: JSON-LD、Microdata、RDFaといった形式の構文規則やSchema.orgの語彙の正しい使用方法に従う必要があります。
パンくずリストの場合、最も重要なのは「実際の表示と構造化データの内容が一致していること」です。視覚的に表示されるパンくずリストと、JSON-LDで記述されたnameやitemが食い違っていると、ガイドライン違反とみなされる可能性があります。
ペナルティのリスク
Googleのガイドラインに違反した場合、以下のような影響を受ける可能性があります。
-
リッチスニペットの非表示: 最も一般的な影響は、期待していたリッチスニペットが表示されなくなることです。これは自動的に行われる場合と、手動で審査された結果として行われる場合があります。
-
手動ペナルティ: 悪質なスパム行為やガイドラインの重大な違反があった場合、Googleはウェブサイトに対して手動ペナルティを課すことがあります。これにより、検索ランキングが大幅に下落したり、検索結果から完全に削除されたりする可能性があります。手動ペナルティを受けた場合、Google Search Consoleで警告が表示され、問題を修正した後に再審査をリクエストする必要があります。
テストツールの活用
実装した構造化データがGoogleのガイドラインに準拠しているか、技術的に正しいかを検証するために、Googleが提供するテストツールを積極的に活用しましょう。
-
リッチリザルトテスト:
このツールは、特定のURLまたはコードスニペットを入力することで、そのページに実装された構造化データがリッチスニペットとして表示可能かどうかをテストします。パンくずリスト(BreadcrumbList)が正しく認識されているか、警告やエラーがないかを確認できます。
-
構造化データテストツール(非推奨だが参考になる場合あり):
かつてGoogleが提供していたツールで、より詳細な構造化データの解析が可能でした。現在はリッチリザルトテストに統合されていますが、一部の複雑なケースでデバッグに役立つこともあります。
これらのツールを使って、実装後の確認はもちろん、定期的なチェックを行うことで、構造化データの健全性を維持し、常に最新のガイドラインに準拠していることを確認することが重要です。