ブログは基本的に、10件の記事の要約をリストするページであり、各アイテムのタイトルは完全な記事ページにリンクしています。
私は見た:
これらはどこで使用しますか?
今私が持っている個々の記事のページで:
<article itemscope itemtype="http://schema.org/Article">
<h1 itemprop="name"> <a href="..."> A title... </a> </h1>
<div itemprop="articleBody">
bla bla
</div>
...
</article>
大丈夫だと思いますが、記事のインデックスページで何をしますか?これらを各記事に追加してitemscope itemtype="http://schema.org/Blog" itemprop="blogPosts"
すべての記事のコンテナ要素に?ドキュメントでは記事がブログの子であるようには見えないので...
主題が非常に曖昧であると他の人が言うことに同意します。それでも、この件について自分の考えを表現し、自分のブログでそれをどのように行っているかを紹介するつもりです。
同じドキュメントで WebPage と Blog の両方のアイテムタイプを使用して、異なるものをマークアップしています。
本文タグで WebPage アイテムタイプを使用しています。そうすることで、パン粉をマークアップできます。
<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 アイテムタイプを使用します。すべての記事をblogPostes
プロパティでマークし、もちろん BlogPosting をアイテムタイプとして使用します。
<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>
この意見の更新については、以下の編集を参照してください
記事のランディングページI しないBlog アイテムタイプを使用します。しかし、私は投稿を BlogPosting アイテムとしてマークします。
<article itemscope itemtype="http://schema.org/BlogPosting">
...
</article>
Blog アイテムタイプで何かをマークしたいと思う唯一の理由は、blogPostes
プロパティとブログであるという事実によるものです。 BlogPosting として記事をマークすることで、それがブログであると言って満足していると思います。これは複数形で使用されているため、このコンテキストでプロパティを使用することは正しくないと私は思います。別の使用領域を反映する私にとって。
スキーマが拡張されたのか、初めて見逃したのかはわかりませんが、 Blog アイテムにはblogPost
というプロパティがあります。これは単数形blogPosts
。したがって、メイン要素を Blog アイテムとしてマークアップし、記事にblogPost
プロパティを使用して としてマークアップする方が理にかなっています。 BlogPosting アイテム
特定のコンテンツに関係なくサイトを説明するために重要なBreadcrumbs/navigationなどを定義できるため、すべてのアップページに http://schema.org/WebPage を使用します。
Microdataスキーマにはまだ多くの作業が必要であり、ギャップのように見えるものを指摘しました-Articleと私が見ることができる他のもの(たとえば、「Articleindex」または「Articles」の間に親/子関係はありません')。
親が伝達する重要な属性を表現しているのでない限り、私はこの親子階層がとにかく非常に重要であることを示すものを実際には何も読んでいないので、どちらでもうまくいくと思います。
ただし、「記事」がどのような種類のコンテンツであるかについては言及していません。それらがより報道的または公式な性質のものである場合(ニュース記事、研究論文など)、私は各記事に http://schema.org/Article を使用し、記事のインデックスについて心配しませんページ。それ以外の場合は、それぞれに http://schema.org/Blog http://schema.org/BlogPostingを使用します。
記事とブログのスキーマの説明は現在かなり曖昧で、おそらく将来変更される可能性がありますが、ブログのスキーマはブログに少し関連していると思います(下の記事のスキーマの説明ページにも示されています) 、 下 "More specific types
")。
したがって、メインのブログページをより高いレベルのスキーマで定義することから始めることができます。
<!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">
また、第2レベルのブログスキーマ BlogPosting を使用してブログページを定義し、適切なアイテムプロパティを次のように定義できます。
<!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">
ええと、複雑です:P、使用できるプロパティは100万ありますが、最も重要なプロパティにのみ焦点を当てています。
おっとっと!このコードはエラーです!
<!DOCTYPE html itemscope itemtype="http://schema.org/Blog">
このコードを使用する必要があります:
<!DOCTYPE html>
の代わりに:
<!DOCTYPE html itemscope itemtype="http://schema.org/Blog">
ブログのタイプを宣言するときに、bodyタグに追加できます。
<body itemscope='' itemtype='http://schema.org/Blog'>
このセクション内では、itemtypeのプロパティとして「Itemprop」を使用できます。
ここでは、サイトの基本的な言語ではなく、サイトの種類について話しています。
使用する他の重要なitemscopesを次に示します
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>