在多个元素上使用itemprop =“articleBody”(schema.org)

时间:2015-03-05 14:16:44

标签: schema.org microdata structured-data

在多个元素上使用itemprop="articleBody"是不好的做法。我问,因为我的页面看起来像这样:

<main class="post content">
  <article itemscope itemType="http://schema.org/BlogPosting">
    <header>
      <h1 itemprop="headline">My Blog Headline</h1>
      <p><time class="dt-published" itemprop="datePublished" pubdate datetime="2015-01-24 19:08:00">Jan 24, 2015</time></p>
      <p itemprop="author">Published by <a class="p-author h-card" itemprop="name" href="http://author.co.uk">Author Name</a></p>
    </header>

    <section itemprop="articleBody">
      <p>Article body</p>
      <p>Article body</p>
    </section>

    <section class="gallery">
      ...
    </section>

    <section itemprop="articleBody">
      <p>Article body</p>
      <p>Article body</p>
    </section>

  </article>
</main>

我的文章正文之间有一个画廊,可以在上面的多个itemprop="articleBody"上使用section吗?

P.S。在display: none上使用itemprop="author"也是不好的做法吗?我不希望它成为页面设计的一部分,还有另一种解决方法吗?

1 个答案:

答案 0 :(得分:0)

1)关于您的主要问题,我处于同样的情况,我找不到证据表明这是一种不良做法。 多个articleBody 标签不会被Google Structured Data Testing Tool拒绝;这不是有效性的证明,而是一个线索。


2)至于您的PS关于隐藏作者姓名的问题,您可以替换以下行:

<p itemprop="author">Published by <a class="p-author h-card" itemprop="name" href="http://author.co.uk">Author Name</a></p>

包含以下几行:

<div itemprop="author" itemscope itemtype="http://schema.org/Person">
  <meta itemprop="name" content="Author Name" />
</div>

顺便说一句,以上几行还指出authorPerson而不是Thing