Можно ли использовать микроданные о звездах вместо числа в обзоре?
Это мой HTML-код для обзора пользователя. В документации по рейтингу говорится, что вы должны отметить число, например: <span itemprop="reviewRating">5</span>
. Однако я использую только звезды, а не число, поэтому это неприменимо в моем HTML.
<div class="review-card text-center" itemprop="review" itemscope itemtype="http://schema.org/Review">
<img src="https://graph.facebook.com/482469078777667/picture?type=square" alt="" class="profile-img">
<div class="review-author">
<span class="ra-author" itemprop="author">Snehah Lama</span>
<ul class="rating-star">
<li><i class="material-icons">★</i></li>
<li><i class="material-icons">★</i></li>
<li><i class="material-icons">★</i></li>
<li><i class="material-icons">☆</i></li>
<li><i class="material-icons">☆</i></li>
</ul>
</div>
<div class="review-content">
<p class="content-inner" itemprop="description">Lorem ipsum dolor....</p>
</div>
</div>
Должен ли я изменить всю свою структуру HTML, чтобы разместить число, которое можно аннотировать, или есть другой способ сделать это?
1 answers
Если вы не хотите отображать значение структурированных данных на странице, вы можете использовать элемент meta
(если значение является URL-адресом, вместо этого вам нужно использовать элемент link
).
Тем не менее, если у вас есть Review
, указание целого числа в качестве значения для reviewRating
не ожидается. В отеле ожидается Rating
значение, которое может иметь ratingValue
собственность.
С отображением значения разметка может выглядеть так это:
<div itemprop="review" itemscope itemtype="http://schema.org/Review">
<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<span itemprop="ratingValue">3</span>/5
</div>
</div>
Без указания значения разметка может выглядеть следующим образом:
<div itemprop="review" itemscope itemtype="http://schema.org/Review">
<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<meta itemprop="ratingValue" content="3">
<span>★★★☆☆</span> <!-- note that this is likely not accessible, the 'meter' element might be better -->
</div>
</div>
С элементом meter
фактическое значение (которое используется микроданными) в любом случае скрыто:
<div itemprop="review" itemscope itemtype="http://schema.org/Review">
<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<meter itemprop="ratingValue" value="3" min="0" max="5">★★★☆☆</meter>
</div>
</div>
Но Google SDTT, похоже, работает неправильно: они используют содержимое элемента meter
вместо содержимого атрибута value
(который требуется спецификацией микроданных ). Добавление атрибута content
с тем же значением исправляет это в SDTT.