Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What microdata should I use for a blog?

The blog is basically a page that lists the summary of like 10 articles, each item title linking to the full article page.

I've seen:

  • http://schema.org/Blog
  • http://schema.org/Article (or maybe http://schema.org/BlogPosting ?)

Where do I use these?

Right now on the individual article page I have:

  <article itemscope itemtype="http://schema.org/Article">             <h1 itemprop="name"> <a href="..."> A title...  </a> </h1>          <div itemprop="articleBody">        bla bla     </div>      ...    </article> 

Which is ok I guess, but what do I do on the article index page? Do I add these to each article and add itemscope itemtype="http://schema.org/Blog" itemprop="blogPosts" to the container element of all articles? Because in the docs it doesn't appear that article is a child of blog...

like image 688
Alex Avatar asked Jan 14 '12 22:01

Alex


1 Answers

I agree with what others say that the subject is very vague. Never the less I will attempt to express my thoughts on the matter and show you how I'm doing it on my blog.

I use both WebPage and Blog item types in the same document to mark up different things.

Web page

I use WebPage item type on the body tag (but you can also use any other parent of the breadcrumb). By doing so I can mark up my bread crumbs.

<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> 

Blog posts

When I loop the blog posts I use the Blog item type on the wrapper that contains all of the blog articles. I mark every article with the property blogPosts and uses of course BlogPosting as item type.

<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> 

Article page

See edit below for an update to this opinion

On the articles landing page I don't use the Blog item type. But I do mark the post as a BlogPosting item.

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

The only reason I can see that you would wanna mark something with a Blog item type is because of the blogPosts properties and the fact to say that it is a blog. I think you fulfill saying that it's a blog by marking the article as a BlogPosting. I also don't think it's correct using the property in this context since this is used in a plural form. To me that reflect a different area of use.


Edit

I'm not sure if the schema has extended or if I missed it the first time around, but the Blog item has a property called blogPost now, that is the singular form blogPosts. So then I would say that it makes more sense to mark up the main element as the Blog item and use the blogPost property for the article and mark it up as a BlogPosting item

like image 172
superhero Avatar answered Oct 12 '22 03:10

superhero