サイトナビゲーション【SiteNavigationElement】構造化データ作成


[{
"@context": "https://schema.org",
"@type": "SiteNavigationElement",
"name": navtitle1"

",
"url": navurl1"

"
}

]
}


name,urlをまとめて記述

また、下記のようにまとめて記述する事も可能。ソースコードはまとまって分かりやすいが、果たしてGoogleがnameとurlのプロパティを紐づけて理解できるかは怪しいところ。

その為、一旦は"@type": "SiteNavigationElement"を量産して全てのナビメニューを分割した。
分割したことにより、ナビゲーションが多量にあるともとられそうだが、現状はこちらの方が無難かと思われる。

{
"@context": "https://schema.org",
"@type": "SiteNavigationElement",
"name": [
"navtitle1",
"navtitle2",
"navtitle3",
"navtitle4"
],
"url": [
"https://seory.info/1",
"https://seory.info/2",
"https://seory.info/3",
"https://seory.info/4"
]
}

SiteNavigationElementは不明瞭な構造化データである

SiteNavigationElementの記述において、不明瞭な点がいくつも存在する。果たしてこの量産されたSiteNavigationElementが正解かどうかについては、答えがない。

Microdataでの記述はいくつか出回っているものの、json-ldについてはあまり見かけない。他の構造化データをjson-ldで記述している場合、SiteNavigationElementのみMicrodataで記述するのも変な話。

SiteNavigationElementを記述する場合、こちらの構造化ジェネレータの結果になるだろう。現状の結論としては確定したものの、今後はもっとよい記述方法が見いだされることもあるだろう。あまりにも迷走しすぎてGoogleに悪影響を及ぼす場合にはウェブフォーラムなどで質疑応答の場が設けられるかもしれない。

無理に記述する必要もないが、構造化データテストツールで正常範囲に収まっている以上、記述しても問題はないだろう。

※追加を希望するプロパティがあれば、問い合わせより。 構造化を目的とする一般的なウェブサイトとGoogle Developersを参照として、汎用性を精査した上で実装を検討することとする。