我正在开发一个大型网站,并希望实施JSON-LD
。该网站有大量的社交媒体关注以及大量的艺术家简介和文章。
这是我目前拥有的,(以下代码来自Google的指南)
首页
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Organization",
"name": "Organization name",
"url": "http://www.your-site.com",
"sameAs": [
"http://www.facebook.com/your-profile",
"http://instagram.com/yourProfile",
"http://www.linkedin.com/in/yourprofile",
"http://plus.google.com/your_profile"
]
}
</script>
内容页面
<script type='application/ld+json'>
{
"@context": "http://www.schema.org",
"@type": "WebSite",
"name": "About us",
"url": "http://www.your-site.com/about-us"
}
</script>
每位艺术家的个人资料页面:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "NewsArticle",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://google.com/article"
},
"headline": "Article headline",
"image": [
"https://example.com/photos/1x1/photo.jpg",
"https://example.com/photos/4x3/photo.jpg",
"https://example.com/photos/16x9/photo.jpg"
],
"datePublished": "2015-02-05T08:00:00+08:00",
"dateModified": "2015-02-05T09:20:00+08:00",
"author": {
"@type": "Person",
"name": "John Doe"
},
"publisher": {
"@type": "Organization",
"name": "Google",
"logo": {
"@type": "ImageObject",
"url": "https://google.com/logo.jpg"
}
},
"description": "A most wonderful article"
}
</script>
我是每页添加一个脚本标记还是在一个脚本标记下添加所有JSON-LD
?在首页我有“组织”标签并显示社交媒体链接,我是否在所有页面上添加此内容?
答案 0 :(得分:1)
您在页面上may have多个script
个JSON-LD数据块,但使用一个script
元素可以更轻松地连接结构化数据实体:您可以嵌套实体而不是拥有实体到reference their URIs。
连接什么?您的NewsArticle
可以
WebPage
¹实体作为mainEntityOfPage
属性的值,以及Organization
实体作为publisher
属性的值。这只是一种可能性。另一个:您可以将WebPage
实体作为顶级项目提供,并将NewsArticle
实体作为mainEntity
属性的值。
如果您必须复制数据(例如,因为Organization
是author
和publisher
,或者因为它是两者的publisher
,{{1}和WebPage
),你可以混合嵌套和引用。 Give each entity an @id
以及您将此实体作为值提供的任何地方,也提供其NewsArticle
。
¹您正在使用@id
,但可能意味着WebSite
。另请注意,WebPage
应为@context
,而非http://schema.org
。