異なるタイプの構造化データを1つにまとめることは可能か?

[レベル: 上級]

複数の構造化データを 1 つのページでマークアップする場合、関連するのであれば “ネスト” して 1 つにまとめたほうが Google が関連性を理解しやすくなります。

あるタイプの構造化データを異なるタイプの構造化データの中に入れても大丈夫か?

2023 年 3 月の英語版オフィスアワーで次の質問が取り上げられました。

あるタイプの構造化データを異なるタイプの構造化データの中に追加することはできますか? たとえば、Q&A 構造化データの中にカルーセルの構造化データを入れる場合です。

Googleの Lizzi Saasman(リッジィ・サースマン)氏は次のように回答しました。

もちろん。構造化データをネストすると、そのページの主な焦点が何なのかを理解する手助けになります。

たとえば、レシピとレビューの構造化データを同じレベルで(別々に)設置すると、そのページがレビューを含んだレシピだと伝えるほど明確ではありません。つまり、そのページの主な目的はレシピであり、レビューはそのレシピの 1 つの要素だということです。

助言を言っておくと、さまざまな構造化データのタイプを組みわせに関する注釈がないかどうかをそれぞれの機能のドキュメントをいつもチェックするといいでしょう。現状では、カルーセル機能がサポートされる機能はコースと映画、レシピ、レストランだけです。


関連する構造化データは 1 つにまとめる

関連する構造化データは 1 つにまとめたほうが、関連していることを Google が理解しやすくなります。

レシピの構造化データとレビューの構造化データを別個にマークアップしてしまうと、レビューがそのレシピのレビューであることが Google には不明瞭になります。
📝すずき注: レシピのレビューでないのであれば、別々にしても何も問題ないが

レシピ構造化データをメインとして、それを構成するプロパティの 1 つとしてレビュー タイプを含めるのです(親の構造化データの中に含めることを “ネスト” (nest) という)。

レシピコンテンツに調理動画を埋め込む場合は、レシピ構造化データの中に動画構造化データをネストして 1 つにまとめます。

複数のタイプをネストするという推奨は 2 年以上前に構造化データのガイドラインに追加されました。
何らかの事情により、ネストせずに別々にマークアップする際は、@id で関連付けします(JSON-LD の場合)。

関連する構造化データを 1 つにまとめるための、ネストと @id の使い方についてはこちらの過去記事で説明しています。