web-dev-qa-db-fra.com

itemprop pour le lien canonique et la méta-description dans la tête

J'ai un problème avec la validation du code fourni par Google. L'idée est (simplifiée):

<head itemscope itemtype="http://schema.org/WebSite">
  <title itemprop="name">Example.com - Best Website in the World</title>
  <meta name="description" content="Blah Blah Blah" itemprop="description">
  <link rel="canonical" href="https://example.com/" itemprop="url">
</head>

Inspiré par documentation Google (voir exemple de marquage).

Le problème principal est que le code ci-dessus n'est pas valide:

L'attribut itemprop n'est pas autorisé sur l'élément meta à ce stade.
L'attribut itemprop n'est pas autorisé sur l'élément link à ce stade.

Mais si je supprime itemprop, Google Structure Tool ne reconnaît plus les propriétés url et description.

Dites-moi pourquoi, pourquoi Google fournit-t-il un code non valide et comment puis-je résoudre ce problème?

1
Mike

L'exemple est HTML non valide + Microdonnées. L'attribut itemprop n'est pas autorisé sur les éléments meta [name] ou link [rel].

La solution pour HTML + Microdata serait de dupliquer les éléments:

<head itemscope itemtype="http://schema.org/WebSite">
  <title itemprop="name">Example.com - Best Website in the World</title>
  <meta name="description" content="Blah Blah Blah">
  <meta itemprop="description" content="Blah Blah Blah">
  <link rel="canonical" href="https://example.com/">
  <link itemprop="url" href="https://example.com/">
</head>

Avec HTML + RDFa, il est possible de mélanger:

<head typeof="schema:WebSite">
  <title property="schema:name">Example.com - Best Website in the World</title>
  <meta name="description" property="schema:description" content="Blah Blah Blah">
  <link rel="canonical" property="schema:url" href="https://example.com/">
</head>
1
unor