2016-02-08 3 views
0

У меня есть страница, содержащая несколько статей, я хочу, чтобы каждый описывал издателя как организацию, но я бы хотел избежать переопределения этой Организации для каждой отдельной статьи. Это возможно?Schema.org - Ссылка на одно определение несколько раз

Атрибут itemref работает только в противоположном направлении, указывая родительское> дочернее отношение, а не наоборот.

В этом примере я привел пример организации из Schema.org, который, на мой взгляд, иллюстрирует проблему - вы не можете повторять эту разметку каждый раз, она раздувает страницу.

<div itemscope itemtype="http://schema.org/Organization"> 
    <span itemprop="name">Google.org (GOOG)</span> 
    Contact Details: 
    <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> 
     Main address: 
     <span itemprop="streetAddress">38 avenue de l'Opera</span> 
     <span itemprop="postalCode">F-75002</span> 
     <span itemprop="addressLocality">Paris, France</span> 
     , 
    </div> 
     Tel:<span itemprop="telephone">(33 1) 42 68 53 00 </span>, 
     Fax:<span itemprop="faxNumber">(33 1) 42 68 53 01 </span>, 
     E-mail: <span itemprop="email">secretariat(at)google.org</span> 
    Members: 
    - National Scientific Members in 100 countries and territories: Country1, Country2, ... 
    - Scientific Union Members, 30 organizations listed in this Yearbook: 
    List of Alumni: 
    <span itemprop="alumni" itemscope itemtype="http://schema.org/Person"> 
    <span itemprop="name">Jack Dan</span> 
    </span>, 
    <span itemprop="alumni" itemscope itemtype="http://schema.org/Person"> 
    <span itemprop="name">John Smith</span> 
    </span> 
</div> 

<div itemscope itemtype="http://schema.org/NewsArticle"> 
    <meta itemprop="url" content="{{canonical_url}}" /> 
    <link itemprop="mainEntityOfPage" href="{{canonical_url}}"> 
    <meta itemprop="genre" content="{{genre}}" /> 
    <meta itemprop="publisher" temtype="http://schema.org/Organization" content="{{???}}" /> 
    <meta itemprop="dateModified" content="{{updated_at}}" /> 
    <div class="item-content"> 
    <div class="item-header" itemprop="name headline"> 
     {{Headline}} 
    </div> 
    <div class="item-body"> 

     <p itemprop="articleBody"> 
     {{content goes here}} 
     </p> 

    </div> 

    <div class="item-footer"> 
     <span itemprop="datePublished dateCreated">{{date}}</span> - <span itemprop="creator author copyrightHolder">{{byline}}</span> 
    </div> 
    </div> 
</div> 

настоящее время я использую микроданных, но если то, что я пытаюсь можно с JSON, то я бы рассмотреть вопрос о переходе.

ответ

1

Если у вас есть Organization пункт и несколько Article пунктов на той же странице, вы можете использовать атрибут МИКРОДАННЫМ в itemref, чтобы обеспечить Organization элемент в качестве значения для publisher собственности:

<div itemprop="publisher" itemscope itemtype="http://schema.org/Organization" id="publisher-1"> 
</div> 

<article itemscope itemtype="http://schema.org/Article" itemref="publisher-1"> 
</article> 

<article itemscope itemtype="http://schema.org/Article" itemref="publisher-1"> 
</article> 

<article itemscope itemtype="http://schema.org/Article" itemref="publisher-1"> 
</article> 

При использовании этого, у вас есть чтобы убедиться, что div (для элемента Organization) не является дочерним элементом другого элемента с itemscope (в противном случае к нему добавляется publisher).

+0

Спасибо, я дам это –

Смежные вопросы