J'ajoute des données structurées à une nouvelle page qui pourrait être définie comme un article ( http://schema.org/Article ) ou une liste d'éléments ( http: // schema .org/ItemList ), car il s’agit d’un article de presse sur un nouveau top 10, dans lequel les 10 éléments figurent sur leurs propres pages ailleurs sur notre site.
Donc, cette page a un titre, un auteur, un contenu unique, une date de publication ... mais elle a aussi une liste classée d'éléments.
Existe-t-il une meilleure pratique pour utiliser les données structurées de schema.org qui donnerait plus de poids à l’un ou l’autre? Ou pourrions-nous même utiliser les deux définitions sur la même page pour définir la liste dans l'article?
Vous pouvez utiliser les deux, si ItemList
est l'élément principal de Article
.
Utilisez la propriété mainEntity
du type Article
pour fournir le ItemList
=.
mainEntity
est généralement utilisé pour désigner la chose principale par rapport à WebPage
(par exemple, probablement le Article
dans votre cas), mais ce n’est pas la seule façon de l’utiliser (accent gras, mien):
Indique l'entité principale décrite dans une page ou une autre
CreativeWork
.
Vous pouvez utiliser mainEntity
dans les deux sens dans le même document:
<body vocab="http://schema.org/" typeof="ItemPage">
<article property="mainEntity" typeof="Article">
<ul property="mainEntity" typeof="ItemList">
</ul>
</article>
</body>
Si ItemList
n’est pas la principale chose à propos de Article
, il ne semble pas y avoir de propriété appropriée pour lier ces éléments. La propriété hasPart
ne peut pas être utilisée, car elle attend une valeur CreativeWork
, mais ItemList
n'en est pas une.