web-dev-qa-db-fra.com

Quelles microdonnées dois-je utiliser pour un blog?

Le blog est essentiellement une page qui répertorie le résumé de 10 articles, chaque titre d'élément renvoyant à la page complète de l'article.

J'ai vu:

Où est-ce que je les utilise?

En ce moment, sur la page de l'article individuel, j'ai:

  <article itemscope itemtype="http://schema.org/Article">       

    <h1 itemprop="name"> <a href="..."> A title...  </a> </h1>    

    <div itemprop="articleBody">
       bla bla
    </div>

    ...

  </article>

Ce qui est bien, je suppose, mais que dois-je faire sur la page d'index de l'article? Dois-je les ajouter à chaque article et ajouter itemscope itemtype="http://schema.org/Blog" itemprop="blogPosts" à l'élément conteneur de tous les articles? Parce que dans la documentation, il ne semble pas que l'article soit un enfant de blog ...

36
Alex

Je suis d'accord avec ce que d'autres disent que le sujet est très vague. Néanmoins, je tenterai d'exprimer mes réflexions sur le sujet et de vous montrer comment je le fais sur mon blog.

J'utilise les deux types d'éléments WebPage et Blog dans le même document pour marquer des choses différentes.

Page Web

J'utilise WebPage type d'élément sur la balise body. Ce faisant, je peux marquer mes miettes de pain.

<body itemscope itemtype="http://schema.org/WebPage">
  <ul itemprop="breadcrumb">
    <li>
      <a href="foo">foo</a> 
    </li>

    <li>
      <a href="foo/bar">bar</a>
    </li>

    <li>
      <a href="foo/bar/baz">baz</a>
    </li>
  </ul>

    ...

</body>

Postes de blog

Lorsque je boucle les articles de blog, j'utilise le type d'élément Blog sur le wrapper qui contient tous les articles de blog. Je marque chaque article avec la propriété blogPostes et utilise bien sûr BlogPosting comme type d'élément.

<section itemscope itemtype="http://schema.org/Blog">
  <article itemprop="blogPosts" itemscope itemtype="http://schema.org/BlogPosting">
    ...
  </article>

  <article itemprop="blogPosts" itemscope itemtype="http://schema.org/BlogPosting">
    ...
  </article>

  ...

</section>

Page d'article

Voir modifier ci-dessous pour une mise à jour de cette opinion

Sur la page de destination des articles I ne utilisez le type d'élément Blog . Mais je marque le message comme un élément BlogPosting .

<article itemscope itemtype="http://schema.org/BlogPosting">
  ...
</article>

La seule raison pour laquelle je peux voir que vous voudriez marquer quelque chose avec un type d'élément Blog est à cause des propriétés blogPostes et du fait de dire que c'est un blog. Je pense que vous remplissez en disant que c'est un blog en marquant l'article comme BlogPosting . Je ne pense pas non plus qu'il soit correct d'utiliser la propriété dans ce contexte, car elle est utilisée au pluriel. Pour moi, cela reflète un domaine d'utilisation différent.


Éditer

Je ne sais pas si le schéma s'est étendu ou si je l'ai manqué la première fois, mais l'élément Blog a une propriété appelée blogPost maintenant, c'est la forme singulière blogPosts. Alors, je dirais qu'il est plus logique de marquer l'élément principal comme l'élément Blog et d'utiliser la propriété blogPost pour l'article et de le marquer comme BlogPosting élément

41
superhero

J'utiliserais http://schema.org/WebPage pour votre page complète car cela vous permet de définir des choses comme Breadcrumbs/navigation qui sont importantes pour décrire un site quel que soit le contenu particulier.

Il y a encore beaucoup de travail à faire dans les schémas de microdonnées et vous avez souligné ce qui semble être une lacune - il n'y a pas de relation parent/enfant entre l'article et tout ce que je peux voir (par exemple 'Articleindex' ou 'Articles ').

Je n'ai vraiment rien lu qui indique que cette hiérarchie parent-enfant est de toute façon très importante, à moins que le parent n'exprime des attributs qu'il est important de transmettre, donc je pense que vous pouvez vous en tirer avec l'un ou l'autre.

Cependant, vous n'avez pas mentionné le type de contenu des "articles". S'ils sont de nature plus journalistique ou officielle (comme un article de presse, un document de recherche, etc.), j'utiliserais http://schema.org/Article pour chaque article et ne vous inquiétez pas de l'index de l'article page. Sinon, utilisez http://schema.org/Blog http://schema.org/BlogPosting pour chacun.

7
TMC

Les descriptions du schéma de l'article et du blog sont assez vagues pour le moment et changeront probablement dans le futur, mais je pense que le schéma du blog est un peu plus pertinent pour un, eh bien, blog (cela est même impliqué dans la page de description du schéma d'article ci-dessous , sous "More specific types ").

Ainsi, vous pouvez commencer par définir votre page de blog principale avec le schéma de niveau supérieur:

<!DOCTYPE html itemscope itemtype="http://schema.org/Blog">
<meta itemprop="creator" content="Creator of the blog">
<meta itemprop="name" content="Title of your Blog">
<meta itemprop="description" content="Description of your blog">
<meta itemprop="image" content="http://www.yourblog.com/main/image/pic.gif">

Et vous pouvez définir vos pages de blog avec le schéma de blog de deuxième niveau, BlogPosting , et définir les propriétés d'élément appropriées, comme ceci:

<!DOCTYPE html itemscope itemtype="http://schema.org/BlogPosting">
<meta itemprop="author" content="Author of your blog">
<meta itemprop="name" content="Title of your content">
<meta itemprop="description" content="Description of your post">
<meta itemprop="image" content="http://www.yourblog.com/post/image/pic.gif">

Urghh, compliqué: P, il y a un million de propriétés que vous pouvez utiliser, mais concentrez-vous simplement sur les plus importantes.

6
Andres Ilich

Oups! ce code est une erreur!

<!DOCTYPE html itemscope itemtype="http://schema.org/Blog">

Vous devez utiliser ce code:

<!DOCTYPE html>

au lieu de:

<!DOCTYPE html itemscope itemtype="http://schema.org/Blog">

Lorsque nous déclarons le type du blog, nous pouvons l'ajouter dans la balise body:

<body itemscope='' itemtype='http://schema.org/Blog'>

Dans cette section, nous pouvons utiliser "Itemprop" comme propriété du type d'élément.
Nous parlons du type de site, pas d'une langue de base d'un site.

2
don magug

Voici d'autres itemscopes importants à utiliser

Exemple pour Person

<div itemscope itemtype="http://schema.org/Person">
     <span itemprop="name">Mahdi Maghrooni</span>
     <img src="http://maghrooni.ir/img/users/FCwNdpWQKGQqiZphN6rj2YuHY3bXrF.jpg" itemprop="image" alt="Maghrooni" />
</div>
1
Mehdi Maghrooni