Микроданные (Microdata) — исходный формат разметки Schema.org: атрибуты встраиваются прямо в существующий HTML. Никакого отдельного блока, никакого дополнительного скрипта — ты дописываешь itemscope, itemtype, itemprop к тегам, которые уже есть на странице. Пример карточки книги:
<div itemscope itemtype="https://schema.org/Book">
<h1 itemprop="name">Мастер и Маргарита</h1>
<p>Автор:
<span itemprop="author" itemscope itemtype="https://schema.org/Person">
<span itemprop="name">Михаил Булгаков</span>
</span>
</p>
<p>Издательство:
<span itemprop="publisher">АСТ</span>
</p>
<p>ISBN: <span itemprop="isbn">978-5-17-090399-7</span></p>
</div>
Поисковик, обрабатывая этот HTML, извлекает: тип — Book, свойства — name, author (вложенный тип Person со своим name), publisher, isbn. Ровно такая же информация в JSON-LD (другой тип разметки) — в отдельном блоке, но результат для машины одинаковый.
Три ключевых атрибута
Микроданные строятся на трёх HTML-атрибутах:
- itemscope — открывает область элемента, помечает контейнер «тут описывается сущность». Никаких значений у атрибута нет, просто присутствие.
- itemtype — URL типа Schema.org (например, https://schema.org/Book). Всегда указывается рядом с itemscope. Определяет, какая именно сущность описывается.
- itemprop — имя свойства из выбранного типа. Ставится на любой вложенный HTML-элемент, содержимое которого станет значением свойства.
Как значения извлекаются из HTML
Правило простое: значение свойства зависит от тега, на котором стоит itemprop:
- Для обычных тегов (<span>, <p>, <h1> и т. д.) — берётся текстовое содержимое.
- Для <a> — значение атрибута href.
- Для <img> — атрибут src.
- Для <time> — атрибут datetime (что удобно — на странице показывается человекочитаемая дата, а в разметку идёт ISO-формат).
- Для <meta> — атрибут content (когда нужно указать значение, невидимое для пользователя).
<div itemscope itemtype="https://schema.org/Event">
<h2 itemprop="name">Фестиваль «JS Meetup»</h2>
<p>Дата:
<time itemprop="startDate" datetime="2026-11-15T18:00:00+03:00">
15 ноября, 18:00
</time>
</p>
<img itemprop="image" src="/photos/js-meetup.jpg" alt="JS Meetup">
<a itemprop="url" href="/events/js-meetup">Подробнее</a>
</div>
Вложенные типы
Свойство одного типа может быть сущностью другого типа. Например, у Book есть свойство author, тип которого — Person со своими свойствами (name, birthDate и т. д.). Для этого создаётся вложенный itemscope:
<div itemscope itemtype="https://schema.org/Book">
<span itemprop="name">Война и мир</span>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<span itemprop="name">Лев Толстой</span>
<time itemprop="birthDate" datetime="1828-09-09">9 сентября 1828</time>
</div>
</div>
Когда микроданные оправданы
Микроданные — исходный формат, старейший. У них две ниши, где выбор оправдан: legacy-код, где менять шаблоны дорого, и простые одностраничные разметки без сложных вложений. Для новых проектов Google рекомендует JSON-LD с 2015 года — сравнение подходов и причины перехода разбираем в главе 5.
Проверка разметки
После добавления микроданных проверь их через инструменты Google:
- Rich Results Test — официальный тестер Google, показывает, попадёт ли страница в Rich Results и какие ошибки в разметке.
- Schema.org Validator — общая валидация разметки, независимая от Google-специфичных требований.
- Google Search Console → Enhancements — отчёты по всем найденным на сайте типам разметки и ошибкам.
После деплоя изменений разметка появляется в GSC-отчётах не сразу — Google должен сначала переиндексировать страницы. Это обычно 1-3 дня; для новых типов Rich Results — иногда до пары недель.