Микроданные родитель / ребенок
Я хочу добавить микроданные /rich-snippets на свой веб-сайт, но документация о некоторых вещах довольно неясна, предположим, у меня есть КОНЦЕПТУАЛЬНЫЙ код:
<div itemscope itemtype="http://schema.org/LocalBusiness">
<div itemprop="name">My Business</div>
<table itemscope itemtype="http://schema.org/PostalAddress">
<tr><td itemprop="telephone">0612345678</td></tr>
<tr><td itemprop="addressCountry">Netherlands</td></tr>
<-- other postalAdress properties -->
</table>
</div>
Эта таблица, очевидно, содержит все свойства контакта (и находится в таблице по причинам форматирования). Проблема в том, что в таблице также есть номер телефона. Тестер микроданных Google считает, что свойство "телефон" принадлежит PostalAddress, однако оно должно принадлежать LocalBusiness. Как это исправить?
1 ответ
Вытащите телефон из области почтового адреса:
<div itemscope itemtype="http://schema.org/LocalBusiness">
<span itemprop="name">My Business</span>
<span itemprop="telephone">0612345678</span>
<div itemscope itemtype="http://schema.org/PostalAddress">
<span itemprop="addressCountry">Netherlands</span>
<-- other postalAdress properties -->
</div>
</div
С schema.org:
Добавляя itemscope, вы указываете, что HTML- код, содержащийся в блоке
... div>, относится к конкретному элементу.2016-04-14 14:22Изменить: Если вы не можете изменить структуру DOM, это лучшее, что я могу придумать:
<div itemscope itemtype="http://schema.org/LocalBusiness" itemref="phone"> <div itemprop="name">My Business</div> <table itemscope itemtype="http://schema.org/PostalAddress"> <tr itemscope><td itemprop="telephone" id="phone">0612345678</td></tr> <tr><td itemprop="addressCountry">Netherlands</td></tr> <-- other postalAdress properties --> </table> </div>