2014-12-12 3 views
0

Я пытаюсь создать Google Rich Snippets для страницы моего продукта.Микроданные для продукта с предложением с организацией

Я создал продукт, используя

<div itemscope="" itemtype="http://schema.org/Product"> 
    ... 
</div> 

Внутри этого продукта, у меня есть предложение, созданное с

<div itemscope="" itemtype="http://schema.org/Product"> 
    <div itemprop="offers" itemscope="" itemtype="http://schema.org/Offer"> 
    ... 
    </div> 
</div> 

Я хочу, чтобы добавить продавец имущества (организации) в Оферте , однако, моя структура HTML имеет продавца под Продуктом, а не под Предложением.

<div itemscope="" itemtype="http://schema.org/Product"> 
    <div itemprop="offers" itemscope="" itemtype="http://schema.org/Offer"> 
    ... 
    </div> 
    <div itemprop="seller" itemscope="" itemtype="http://schema.org/Organization"> 
    ... 
    </div> 
</div> 

Однако это не похоже на инструмент тестирования Google Structured Data.

Я тогда попытался с помощью itemref на организации и использовании meta -tag в Оферте

<div itemscope="" itemtype="http://schema.org/Product"> 
    <div itemprop="offers" itemscope="" itemtype="http://schema.org/Offer"> 
    <meta itemprop="seller" itemref="provider"> 
    ... 
    </div> 
    <div id="provider" itemscope="" itemtype="http://schema.org/Organization"> 
    ... 
    </div> 
</div> 

Но до сих пор, кажется, не признают продавцом в качестве организации.

Что я делаю неправильно?

ответ

1

Вы не используете itemref правильно:

  • Атрибут itemref должен быть указан элемент с itemscope.
  • Он должен ссылаться на элемент с itemprop.

Так что ваш пример должен был бы выглядеть следующим образом:

<div itemscope itemtype="http://schema.org/Product"> 
    <div itemprop="offers" itemscope itemtype="http://schema.org/Offer" itemref="provider"> 
    </div> 
    <div id="provider" itemprop="seller" itemscope itemtype="http://schema.org/Organization"> 
    </div> 
</div> 

Но это не работает, так как этот путь, seller свойство будет добавлено к обоим пунктам, Product и Offer. Это недействительно, поскольку Product не может иметь свойство seller.

Таким образом, вам нужно будет либо изменить гнездование, либо не использовать Product на контейнере div.

Однако, есть также некрасиво фикс: добавить фиктивный элемент с itemscope:

<div itemscope itemtype="http://schema.org/Product"> 
    <div itemprop="offers" itemscope itemtype="http://schema.org/Offer" itemref="provider"> 
    </div> 
    <div itemscope> 
    <div id="provider" itemprop="seller" itemscope itemtype="http://schema.org/Organization"> 
    </div> 
    </div> 
</div> 
+0

Спасибо. Таким образом, нет способа сохранить старый контент-макет и иметь надлежащую разметку схемы? –

+0

@MadsOhmLarsen: Если вы не можете добавить элемент 'div' (так что' Product' не является контейнером для всего), я не могу придумать решение. – unor

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