2014-09-03 3 views
1

Мы используем микроданные на нашем веб-сайте, и мне интересно, может ли несколько элементов ссылаться на другой ... Я объясню, что я пытаюсь сделать.Microdata - гнездование и множество itemref

На странице блога вы можете иметь оба блога и авторы, связанные с организацией, как это:

<article itemref="organisation" itemtype="http://schema.org/BlogPosting" 
    itemscope> 
    <p class="date"><meta content="2014-01-16" itemprop="datePublished" />16-01-2014</p> 
    <p>by 
     <span itemref="organisation" itemtype="http://schema.org/Person" 
      itemscope itemprop="author"> 
      <meta content="Joe Bloggs" itemprop="name" />Joe</span> 
    </p> 
    <h2 itemprop="name" >Awesome content here</h2> 
    <a href="http://www.example.com/awesome-content-here/">Full story</a> 
</article> 

<div itemprop="worksFor publisher" itemtype="http://schema.org/Organization" 
    itemscope="" id="organisation"> 
    <meta content="MyOrg" itemprop="name"> 
    <a href="mailto:[email protected]" itemprop="email">[email protected]</a> 
</div> 

Организация будет быть worksFor для автора, и издатель для после. То, что я поставил, неверно, worksFor и издатель применяются как к сообщению, так и к автору.

Есть ли способ достичь того, что я пытаюсь здесь?

Спасибо!

Тоби

+0

'' p' и span' [не может иметь атрибут 'Content'] (http://stackoverflow.com/a/18898363/1591669) в Microdata (он определен только для элемента 'meta'). Либо используйте «meta' /' link »и поместите текст, читаемый человеком, рядом с ним, либо используйте атрибут' data' и его атрибут 'value', где это необходимо. – unor

+0

Ваш 'h2' содержит' ', но не имеет открывающего тега' a'. – unor

+0

Хорошо, внесенные изменения. – toby1kenobi

ответ

-1

Как было отмечено выше:

р и оболочка не может иметь атрибут контента в микроданных (это только определено для мета элемента). Либо используйте meta/link и поместите текст, читаемый человеком, рядом с ним, либо используйте атрибут data и его атрибут value, где это необходимо.

Ниже приведен пример объединения с использованием атрибута itemref:

<div id="daughter" itemprop="children" itemscope itemtype="http://schema.org/Person"> 
    <span itemprop="name">Mary</span> 
</div> 

<div itemscope itemtype="http://schema.org/Person" itemref="daughter"> 
    <span itemprop="name">John</span> 
</div> 

<div itemscope itemtype="http://schema.org/Person" itemref="daughter"> 
    <span itemprop="name">Julie</span> 
</div> 
+0

Почему вы добавили это, этот комментарий был сделан почти два месяца назад, и я обновил свой вопрос соответственно? И это не ответ на мой вопрос (могу ли я связать два разных предмета с другим)? – toby1kenobi

+0

Хорошая точка. Это помогает прояснить вопрос и увеличить вероятность получения хорошего ответа. Ответ на [связанный вопрос] (http://stackoverflow.com/questions/24080142/1113772) может быть близок. –

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