JSON-LDのベストプラクティス:複数の<script>要素を使用する?
2023-09-29 17:43:04
質問
schema.orgのためにJSON-LDをサイトに適用するためのベストプラクティスについて知りたいのですが。
もし私が
Article
を定義し、さらに
WebSite
を定義したい場合、私はこうなります。
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"url": "http://www.example.com/",
"potentialAction": {
"@type": "SearchAction",
"target": "http://www.example.com/search?&q={query}",
"query-input": "required"
}
}
</script>
<!- … -->
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Article",
"author": "John Doe",
"interactionCount": [
"UserTweets:1203",
"UserComments:78"
],
"name": "How to Tie a Reef Knot"
}
</script>
これは正しいのでしょうか、それとも間違っているのでしょうか?これらを同じスクリプトまたはアイテムの配列に統合する利点や必要性はありますか?
どのように解決するのですか?
有効です。データブロックはいくつでも(=
script
要素) を好きなだけ持つことができます。
をひとつだけ使用することの利点は
script
要素を使うことの利点: 複数のアイテムの関係をより簡単にすることができます (例えば、あなたが
hasPart
または
mainEntity
のように)、単に項目を入れ子にする必要があるからです。
しかし、このような関係を作ることは、もちろん個別のデータブロックを使う場合にも可能で、アイテムの URI を
@id
(
Gregg Kellogg さん、ありがとうございます。
).
(参考までに
で2つ以上のトップレベル項目を追加することは、1つの
script
で可能です。
@graph
.)
関連
-
iframeフレームワークの使用
-
document.forms 使用方法
-
[解決済み] BootstrapのCollapse Navbarが動作しない
-
[解決済み] bootstrapでボタンにリンクを貼るには?
-
[解決済み] 要素を水平方向にセンタリングする方法
-
[解決済み] セルフクローズスクリプトエレメントが機能しないのはなぜですか?
-
[解決済み] CSS 背景の不透明度 [重複]について
-
[解決済み] テーブル内のテキストアラインクラス
-
[解決済み] label要素の中にinput要素を入れるべきですか?
-
What's a `<script type='application/ld+json'>{jsonObj}</script>` in a `head` section do?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] HTMLのテーブルからボーダーを完全に削除する方法
-
[解決済み] 横型リストアイテム
-
[解決済み] チェックボックスとそのラベルをクロスブラウザーで一貫して揃える方法
-
[解決済み] ローカルストレージとCookieの比較
-
[解決済み] WebSocketとサーバー送信型イベントの比較/EventSource
-
[解決済み] HTML5でfloat入力タイプはありますか?
-
[解決済み] ラジオボタンをデフォルトで選択するには?[重複しています]
-
[解決済み] CSS 背景の不透明度 [重複]について
-
[解決済み] 残りの幅を埋めるためにdivを展開する
-
[解決済み] div内の画像の下に余分なスペースがある