web-dev-qa-db-ja.com

Webページで複数のschema.orgスキーマを使用する方法

Webページに複数のスキーマを追加するにはどうすればよいですか?

ホームページでOrganizationおよびWebSiteスキーマを使用しています。 JSON-LD形式でマークアップを書いています。

ナレッジグラフのOrganizationスキーマ:

<script type="application/ld+json">
     {
          "@@context": "http://schema.org",
          "@@type": "Organization",
          "name": "My Website Name",
          "url": "http://www.example.com",
          "sameAs": [
               "http://www.facebook.com/example-com",
               "http://www.instagram.com/example-com"
          ]
     }
</script>

検索結果に自分のサイト名を含めるWebSiteスキーマ(Googleがこれを実装することに決めた場合):

<script type="application/ld+json">
     {
          "@context" : "http://schema.org",
          "@@type" : "WebSite",
          "name" : "My Website Name",
          "url" : "http://www.example.com"
     }
</script>

ご覧のとおり、両方とも同じnameおよびurlプロパティを持っています。

2を個別に指定する必要がありますか、それとも2を連結するだけですか?ページの最初に行かなければならない好みはありますか?

2016年2月23日更新:

私はunorの助けを借りて次のことで終わりました:

<script type="application/ld+json">
     {
          "@context": "http://schema.org",
          "@graph": [{
               "@type": "WebSite",
               "name": "My Website Name",
               "url": "http://www.example.com"
          }, {
               "@type": "WebPage",
               "name": "My Website Name",
               "url": "http://www.example.com"
          }, {
               "@type": "Organization",
               "name": "My Website Name",
               "url": "http://www.example.com",
               "sameAs": [
                    "http://www.facebook.com/example-com",
                    "http://www.instagram.com/example-com"
               ]
          }]
     }
</script>
6
Brendan Vogt

JSON-LD( Microdata/RDFaの代わりに )では、各ノードに対してプロパティとその値を繰り返す必要があります。

各ノードに個別のscript要素 を使用する代わりに、 @graphの値としてすべてのノードを含む単一のscript要素 を使用することもできます。そうすれば、@context(および場合によってはカスタムプロパティ)を一度定義するだけで済みます。

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@graph": 
  [
    {
       "@type": "WebSite"
    },
    {
       "@type": "Organization"
    }
  ]
}
</script>

script要素(または@graphのノード)の順序は重要ではありません

5
unor

組織にすでにWebサイトのURLを追加している場合、WebサイトにWebサイトスキーマを追加する必要はありません。

組織スキーマを使用している場合は、ロゴプロパティも使用することをお勧めします。

"logo": "http://www.example.com/logo.png"

もう1つ言いたいのは、Googleはすべてのスキーマとそのプロパティをサポートしていないため、これらのスキーマを使用することです。これは 現在Googleでサポートされています です。

0
Goyllo