65 votes

Mettez-vous au Schéma de Microdonnées des balises meta dans le code html de corps?

J'ai cherché pendant longtemps à travers l'internet et stackoverflow pour une réponse à cette question, et j'ai trouvé des liens qui disent que vous ne devriez pas mettre des balises meta dans le corps:

alors que le schema.org site web montre clairement les balises meta être imbriqués directement dans le corps http://schema.org/AggregateRating

Il suffit de regarder l'exemple qui est posté là

 Customer reviews:

  <div itemprop="reviews" itemscope itemtype="http://schema.org/Review">
    <span itemprop="name">Not a happy camper</span> -
    by <span itemprop="author">Ellie</span>,
    <meta itemprop="datePublished" content="2011-04-01">April 1, 2011
    <div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
      <meta itemprop="worstRating" content = "1">
      <span itemprop="ratingValue">1</span>/
      <span itemprop="bestRating">5</span>stars
    </div>
    <span itemprop="description">The lamp burned out and now I have to replace
    it. </span>
  </div>


 <div itemprop="reviews" itemscope itemtype="http://schema.org/Review">
    <span itemprop="name">Value purchase</span> -
    by <span itemprop="author">Lucas</span>,
    <meta itemprop="datePublished" content="2011-03-25">March 25, 2011
    <div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
      <meta itemprop="worstRating" content = "1"/>
      <span itemprop="ratingValue">4</span>/
      <span itemprop="bestRating">5</span>stars
    </div>
    <span itemprop="description">Great microwave for the price. It is small and
    fits in my apartment.</span>
  </div>

Si vous deviez garder les balises meta dans l' <head>, alors comment voulez-vous établir un lien entre ces deux dates à leur avis? <meta itemprop="datePublished" content="2011-04-01"> <meta itemprop="datePublished" content="2011-03-25">

Ce qui est source de confusion et je voudrais savoir comment le faire correctement.

78voto

unor Points 14115

Si un meta élément

  • a un itemprop d'attribut et un content d'attribut, et
  • n'a pas d' name d'attribut, pas de http-equiv d'attribut, et pas charset de l'attribut,

ensuite, c'est valable pour avoir cette meta dans la body. (Si la valeur est une URL, vous devez utiliser link à la place.)

Pourquoi? Parce que les Microdonnées changements de spécification HTML5.

(Notez que RDFa également des changements HTML5 en autorisant meta dans la body dans certains cas.)


Si vous deviez garder à l' meta de balises dans l' <head>, alors comment voulez-vous établir un lien entre ces deux dates à leur avis?

Vous pourriez utiliser l' itemref d'attribut:

<!DOCTYPE html>
<html>
<head>
  <title>Using itemref for meta in the head</title>
  <meta itemprop="datePublished" content="2011-03-25" id="date">
</head>
<body>

  <div itemscope itemtype="http://schema.org/Review" itemref="date">
    <span itemprop="name">…</span>
  </div>

</body>
</html>

itemref prend un espace-liste séparée par des id valeurs, de sorte que vous pouvez même référence de deux ou plus de deux éléments. Il suffit d'ajouter le id de tous les éléments (contenant itemprop d'attributs) qui devrait être ajouté à l'élément itemref d'attribut, par exemple: itemref="date author rating".

8voto

Erik Landvall Points 1804

Ce que je peux lire à partir de whatwg.org c'est correct d'utiliser dans le corps: http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#the-meta-element

J'ai utiliser des meta tags dans le corps de mon blogg pour spécifier le "datePublished" et "dateUpdated" propriétés. Google Rich Snippets Testing Tool me dit que c'est correct et valide w3c le code.

5voto

Rowe Morehouse Points 651

Vous pouvez utiliser:

<meta itemprop="">

dans le corps de la page pour faire schema.org le balisage sémantique qui est lisible à la machine (par des robots, pour le RÉFÉRENCEMENT, par exemple), même si vous ne voulez pas d'affichage du texte (nom du produit, par exemple) sur la page.

voir: http://schema.org/docs/gs.html#advanced_missing

Parfois, une page web a de l'information qui serait utile pour marquer jusqu', mais l'information ne peut pas être marqué vers le haut en raison de la façon dont il apparaît sur la page. L'information peut être véhiculée dans une image (pour exemple, une image utilisée pour représenter une note de 4 sur 5) ou d'un Flash objet (par exemple, la durée d'un clip vidéo), ou il peut être implicite, mais pas explicitement mentionné dans la page (par exemple, l' monnaie d'un prix).

5voto

ladar Points 2475

Je le fais de cette façon:

<meta id="md_course" itemprop="course" name="course"   content="..."/>
<meta id="md_lang" itemprop="language" content="eng"/>
<title id="md_title" itemprop="title" >Motivation and Course Overview</title>
</head>
<body itemscope itemtype=".../Presentation" itemref="md_course md_lang md_title md_field"> 

3voto

user327066 Points 410

Lors de la première réunion de travail avec schema.org's de microdonnées, j'ai ajouté les balises meta dans la balise head de ma page web, mais quand j'ai couru cette page à l'encontre de Google Rich Snippets Testing Tool, les données n'a pas été extraite. J'ai ensuite passé les balises meta dans le corps de la page et les données a été montré que des extraits.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X