Введение в schema.org — Вебмастер. Справка
Содержание страниц вашего сайта понятно читающим их людям, однако поисковым системам сложно определить, о чем идет речь. Добавляя специальные теги к HTML-коду своих страниц, вы как бы говорите: «Эй, поисковая система, вот здесь описывается такой-то фильм (место, человек, видеоролик)». Тем самым вы помогаете поисковым системам и другим приложениям лучше понимать ваш контент и отображать его подходящим, полезным образом. Микроданные — набор тегов, появившийся в HTML5,— позволяют делать именно так.
Начнем с конкретного примера. Представим, что у нас есть страница о фильме «Аватар» — со ссылкой на трейлер, информацией о режиссере и т. п. HTML-код может выглядеть примерно так:
<div>
<h2>Аватар</h2>
<span>Режиссер: Джеймс Кэмерон (род. 16 августа 1954 г.)</span>
<span>Фантастика</span>
<a href=". ./movies/avatar-theatrical-trailer.html">Трейлер</a>
</div>
В первую очередь необходимо указать, какая часть страницы посвящена непосредственно фильму «Аватар». Для этого добавим атрибут itemscope
к HTML-тегу, в который заключена эта информация:
<div itemscope>
<h2>Аватар</h2>
<span>Режиссер: Джеймс Кэмерон (род. 16 августа 1954 г.)</span>
<span>Фантастика</span>
<a href="../movies/avatar-theatrical-trailer.html">Трейлер</a>
</div>
Добавляя itemscope
, мы тем самым обозначаем, что HTML-код, содержащийся в блоке <div>...</div>
Пока мы только объявили, что речь идет о какой-то сущности, но не сообщили, что это за сущность. Чтобы указать тип сущности, добавим атрибут itemtype
сразу после itemscope
.
<div itemscope itemtype="http://schema.org/Movie">
<h2>Аватар</h2>
<span>Режиссер: Джеймс Кэмерон (род. 16 августа 1954 г.)</span>
<span>Фантастика</span>
<a href="../movies/avatar-theatrical-trailer.html">Трейлер</a>
</div>
Тем самым мы уточняем, что сущность, описание которой заключено в теге <div>
, представляет собой фильм (тип Movie в иерархии типов schema.org). Названия типов имеют вид URL, в нашем случае
.
Какую дополнительную информацию о фильме «Аватар» можно предоставить поисковым системам? О фильме можно сообщить множество интересных сведений: актерский состав, режиссер, рейтинг. Чтобы отметить свойства сущности, используется атрибут itemprop
. Например, чтобы указать режиссера фильма, добавим атрибут itemprop="director"
к HTML-тегу, содержащему имя режиссера. (Полный список свойств, которые можно задать для фильма, приведен на странице http://schema.org/Movie.)
<div itemscope itemtype="http://schema.org/Movie">
<h2 itemprop="name">Аватар</h2>
<span>Режиссер:
<span itemprop="director">Джеймс Кэмерон</span>
(род. 16 августа 1954 г.)</span>
<span itemprop="genre">Фантастика</span>
<a href="../movies/avatar-theatrical-trailer.html" itemprop="trailer">Трейлер</a>
</div>
Обратите внимание, что мы добавили дополнительный тег <span>...</span>
, чтобы привязать атрибут itemprop
к соответствующему тексту на странице. Тег <span>
не влияет на отображение страницы в браузере, поэтому его удобно использовать вместе с itemprop
.
Теперь поисковые системы смогут понять не только то, что http://www.avatarmovie.com — это ссылка, но и то, что это ссылка на трейлер фантастического фильма «Аватар» режиссера Джеймса Кэмерона.
Иногда значение свойства может само являться сущностью, с собственным набором свойств. Например, режиссер фильма может быть описан как сущность с типом Person, у которой есть свойства name
(имя) и birthDate
(дата рождения). Чтобы указать, что значение свойства представляет собой сущность, необходимо добавить атрибут itemscope
сразу после соответствующего itemprop
.
<div itemscope itemtype="http://schema.org/Movie">
<h2 itemprop="name">Аватар</h2>
<div itemprop="director" itemscope itemtype="http://schema.org/Person">Режиссер:
<span itemprop="name">Джеймс Кэмерон</span>
(род. <span itemprop="birthDate">16 августа 1954 г.</span>)
</div>
<span itemprop="genre">Фантастика</span>
<a href="../movies/avatar-theatrical-trailer.html" itemprop="trailer">Трейлер</a>
</div>
ruschema.org — проект перевода schema.org
Перевод осуществляется в гордом одиночестве и на голом энтузиазме, так что имейте терпение, а если есть возможность — можете помочь 🙂
Все свои замечания или замеченные неточности в переводе пишите сюда
Для тех кто не понял о чем вообще все это — вот определение Яндекса:
Schema.org – это стандарт семантической разметки данных в сети, объявленный поисковыми системами Google, Bing и Yahoo! летом 2011 года.
Цель семантической разметки – сделать интернет более понятным, структурированным и облегчить поисковым системам и специальным программам извлечение и обработку информации для удобного её представления в результатах поиска.
Разметка происходит непосредственно в HTML-коде страниц с помощью специальных атрибутов и не требует создания отдельных экспортных файлов.
Микроданные (HTML microdata) — это международный стандарт семантической разметки HTML-страниц, с помощью атрибутов, описывающих смысл информации, содержащейся в тех или иных HTML-элементах. Такие атрибуты делают контент страниц машиночитаемым, то есть позволяют в автоматическом режиме находить и извлекать нужные данные.
Это сайт, который содержит коллекцию схем (html-тегов), которые вебмастера могут использовать для разметки своих страниц способами, признаными крупнейшими поисковыми системами, такими как Bing, Google, Yahoo! и Яндекс, которые полагаются на эту разметку для улучшения отображения результатов поиска, делая процесс поиска правильных веб-страниц проще для людей.
Многие сайты генерируются из структурированных данных, которые чаще всего хранятся в БД. Когда данные переводятся в HTML, становится очень сложно восстановить первоначальные структурированные данные. Многие приложения, особенно поисковые системы, могут получить значительные преимущества, имея прямой доступ к структурированным данным. Разметка страниц позволяет поисковым системам понимать информацию на веб-страницах и предоставлять пользователю именно ту информацию, которую он ищет. Разметка также может задействовать новые инструменты и приложения, которые используют эту структуру.
Этот общий словарь облегчит вебмастерам выбор правильной схемы разметки и поможет получить максимум выгоды из приложенных усилий. Так, воодушевленные sitemaps.org, Bing, Google and Yahoo! собрались вместе чтобы создать для вебмастеров эту коллекцию схем.
Ну что ж, начнем!
Либо сразу можете перейти к поиску необходимого типа
Микроразметка Shema.org
Микроразметка необходима сайту, чтобы упростить поисковикам распознавание информации, размещенной на нем. Shema.org помогает роботам наиболее точно обработать, распределить и понять информацию на интернет-ресурсах, чтобы потом выдать эти данные пользователям в поисковой выдаче. Кроме того, поисковые роботы относятся более лояльно к сайтам с микроразметкой, что позволяет быстрее индексировать новые посты.
Схема разметки для раздела «Контакты» (schema.org LocalBusiness)
Микроразметка для бизнеса или филиалов организации, которые имеют физический адрес. Примерами могут служить как отдельный ресторан, так и каждое заведение сети, филиал банка, стоматологическая клиника и т.д. Данная разметка позволяет поисковым системам получать больше информации о вашем бизнесе и выводить её в сниппетах. Рассмотрим пример микроразметки для организации типа «Веб-студия» (такого типа нет, поэтому будем использовать довольно общий тип «Бизнес» 2 уровня)
<div itemscope itemtype="http://schema.org/LocalBusiness"> <p itemprop="name">Дизайн студия</p> <p itemprop="description">Веб студия занимается разработкой сайтов на 1С-Битрикс</p> <div itemprop="address" itemscope="" itemtype="http://schema.org/PostalAddress"> <p>Адрес: <span itemprop="postalCode">119019</span>, <span itemprop="addressCountry">Россия</span>, <span itemprop="addressRegion">Московская область</span>, <span itemprop="addressLocality">Москва</span>, <span itemprop="streetAddress">Красная площадь, д. 1</span> </p> </div> <p>Телефоны: <span itemprop="telephone">8(495)123-45-67</span>, <span itemprop="telephone">8(499)123-45-67</span> </p> <p>Факс: <span itemprop="faxNumber">8(495)123-45-67</span> </p> <p>E-mail: <a itemprop="email" href="mailto:[email protected]">[email protected]</a> </p> <p>Адрес сайта: <a href="http://site.ru" itemprop="url">site.ru</a> </p> <img itemprop="logo" src="http://site.ru/Images/logo.png"> <div>Время работы: <time itemprop="openingHours" datetime="Mo-Fr 9:00−20:00">С Понедельника по Пятницу 9-20</time>, <time itemprop="openingHours" datetime="St,Sn">Суббота, Воскресенье круглосуточно</time> </div> <div itemprop="geo" itemscope="" itemtype="http://schema.org/GeoCoordinates"> <meta itemprop="latitude" content="55.7537523"> <meta itemprop="longitude" content="37.6225168"> </div> <p>ИНН: <span itemprop="taxID">1234567890</span> </p> </div>
Схема для раздела «О компании» (schema.org Organization)
Эта схема универсальна, если вы не отнесли свою фирму ни к одному другому типу, смело пользуйтесь этой схемой. Тут приводится общая контактная информация, наименование, адреса, телефоны, электронная почта.
<div itemscope="" itemtype="http://schema.org/Organization"> <p itemprop="name">Наименование организации</p> Контактная информация: <div itemprop="address" itemscope="" itemtype="http://schema.org/PostalAddress"> <p>Почтовый адрес: <span itemprop="streetAddress">номер дома, улица</span> <span itemprop="postalCode">почтовый индекс</span> <span itemprop="addressLocality">город, страна</span> </p> </div> <p>Телефон: <span itemprop="telephone">контактный телефон</span>, Факс:<span itemprop="faxNumber">факс</span>, E-mail: <span itemprop="email">корпоративный e-mail</span> </p> </div>
Микроразметка для раздела «Статьи» (schema.org/Article)
Микроразметка статьи позволяет сделать сниппет более структурированным и человекочитаемым. Следует найти файл, который отвечает за обзор статей. Например, это может быть: single.php. Для начала находим тег, отвечающий за вывод контента, и вставляем нужный атрибут.
<div itemscope itemtype="http://schema.org/BlogPosting"> <link itemprop="mainEntityOfPage" itemscope href="Ссылка" /> <div itemprop="publisher" itemscope itemtype="https://schema.org/Organization"> <div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject"> <img alt="Логотип сайта" itemprop="image url" src="Ссылка на логотип сайта"/> <meta itemprop="width" content="размер в пикселях"> <meta itemprop="height" content="размер в пикселях"> </div> <meta itemprop="telephone" content="Телефон"> <meta itemprop="address" content="Адрес"> <meta itemprop="name" content="Название"> </div> <meta itemprop="datePublished" content="1111"> <meta itemprop="dateModified" content="Дата последнего редактирования статьи"> <span itemprop="author" itemscope itemtype="http://schema.org/Person"> <span itemprop="name">Автор статьи</span> </span> <div itemprop="articleBody"> <h2 itemprop="headline">Заголовок Вашей статьи</h2> <span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"> <img itemprop="image url" alt="Описание изображения" src="Ссылка на изображение"/> <meta itemprop="width" content="размеры в пикселях"> <meta itemprop="height" content="размеры в пикселях"> </span> <p>Тут идет основной текст статьи, который можно разбить на абзацы. Разрешено использование всех html тэгов разметки.</p> </div> </div>
Микроразметка для «Картинок» (schema.org/ImageObject)
Существует отдельный поиск по изображениям, который дает дополнительную возможность увеличить трафик на сайт, если пользователь ищет товар по изображению. Атрибут itemprop=»image» позволяет роботам быстро распознавать информацию о картинках. Достаточно будет указать ссылку на изображение, описание, название картинки, подпись, размеры изображения.
<div itemscope itemtype="http://schema.org/ImageObject"> <h3 itemprop="name">название картинки</h3> <img src="https://www.seo.ru/images.jpg" itemprop="contentUrl" /> <p itemprop="description">описание картинки</p> </div>
Микроразметка для раздела «Товарные страницы» (shema.org Product)
Для разметки товарных страниц используются схемы Product и Offer или AggregateOffer в Schema.org/Product. Таким образом информация ваших продуктовых страниц может быть представлена в виде структурированных сниппетов с описанием товара и ценой в выдаче Яндекса. Разметив эту разметку на странице сайта, можно привлечь больше потенциальных покупателей.
Вариант 1
<div itemscope itemtype="http://schema.org/Product"> <span itemprop="name">Кровать Мелисса с мягкой спинкой</span> <span itemprop="brand">Компания диваны</span> <img itemprop="image" src="https://www.iseo.ru/bitrix/templates/iseo/images/melissa.png" /> <span itemprop="description">Кровать Мелисса с мягкой спинкой и гарантией производителя</span> <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> <meta itemprop="priceCurrency" content="RUB" /> <span itemprop="price">6793</span> </div> </div>
Вариант 2
<div itemscope itemtype="http://schema.org/Product"> <span itemprop="name">Плюшевый еж "Уф Уф"</span> <span itemprop="brand">Фабрика плюшевых ежей "С иголочки"</span> <span itemprop="model">Номер модели 964893NM</span> <img itemprop="image" src="Ссылка на изображение ежа" /> <span itemprop="description">Текстовое описание товара.</span> <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> <meta itemprop="priceCurrency" content="RUB" /> <span itemprop="price">Стоимость товара</span> <span itemprop="seller">Продавец товара</span> </div> </div>
Микроразметка для раздела «Отзывы» (schema.org/Review)
Если на страницах товаров есть отзывы, их также можно разметить при помощи свойства Review. В результате в выдаче Google в сниппете появится рейтинг и отзывы: В коде сайта необходимо указать следующие атрибуты.
<div itemscope itemtype="http://schema.org/Review"> <h3 itemprop="name"><a href="http://example.com/review?10231" itemprop="url">Русская кухня в изгнании</a></h3> <div>Отзыв написал <span itemprop="author" itemscope itemtype="http://schema.org/Person"> <span itemprop="name"> <a itemprop="url" href="http://example.com/users/vasya">Вася Пупкин</a> </span> </span> <meta itemprop="datePublished" content="2012-07-15" /> 15 июля 2012. </div> <div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating"> <meta itemprop="worstRating" content="0"/> <p>Оценка: <span itemprop="ratingValue">9</span> из <span itemprop="bestRating">10</span>.</p> </div> <div itemprop="pro">Бесплатная стоянка, прекрасная детская комната и предупредительные официанты.</div> <div itemprop="contra">Большой и шумный некурящий зал.</div> <div itemprop="reviewBody"> <p>Заказ был готов сравнительно быстро, а напитки приготовили практически сразу. Обслуживание на уровне, хотя грязная посуда иногда застаивалась.</p> <p>Рекомендую русскую кухню, особенно супы.</p> </div> <div>Автор посетил заведение <meta itemprop="dateVisited" content="2012-07-10">10 июля 2012.</div> <div>Оценки характеристик ресторана: <ul> <li itemprop="tag" itemscope itemtype="http://schema.org/Rating"> <link itemprop="ratingTarget" href="https://webmaster.yandex.ru/vocabularies/ReviewBusiness/Cuisine.xml"> Кухня: <span itemprop="ratingValue">5</span> из <span itemprop="bestRating">5</span>; </li> <li itemprop="tag" itemscope itemtype="http://schema.org/Rating"> <link itemprop="ratingTarget" href="https://webmaster.yandex.ru/vocabularies/ReviewBusiness/Hall.xml"> Зал: <span itemprop="ratingValue">3</span> из <span itemprop="bestRating">5</span>; </li> </ul> </div> <div itemprop="itemReviewed" itemscope itemtype="http://schema.org/Hotel"> <h4>Информация о ресторане</h4> <p>Название: <span itemprop="name">Заграница</span></p> <p itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">Адрес: <span itemprop="addressLocality">Москва</span>, <span itemprop="streetAddress">Тверская, 7</span>. </p> <p>Телефон: <span itemprop="telephone">123-45-12</span>.</p> <p>Сайт ресторана: <a itemprop="url" href="http://zagranica.ru">http://zagranica.ru</a></p> <p>Электронный адрес администрации: <a itemprop="email" href="mailto:[email protected]">[email protected]</a> </p> </div> </div>
Микроразметка для раздела «О себе» (schema.org/Person)
Person — тип для описания человека — реально существующего, жившего давно или вообще вымышленного. С его помощью можно описать имя, фамилию, возраст, дату рождения и смерти, пол, контактные данные, информацию о работе и кучу другой информации, которую робот поймёт.
Вариант 1
<div itemscope itemtype="http://schema.org/Person"> <span itemprop="name">Jane Doe</span> <img src="janedoe.jpg" itemprop="image" /> <span itemprop="jobTitle">Professor</span> <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> <span itemprop="streetAddress"> 20341 Whitworth Institute 405 N. Whitworth </span> <span itemprop="addressLocality">Seattle</span>, <span itemprop="addressRegion">WA</span> <span itemprop="postalCode">98052</span> </div> <span itemprop="telephone">(425) 123-4567</span> <a href="mailto:[email protected]" itemprop="email"> [email protected]</a> Jane's home page: <a href="http://www.janedoe.com" itemprop="url">janedoe.com</a> Graduate students: <a href="http://www.xyz.edu/students/alicejones.html" itemprop="colleague"> Alice Jones</a> <a href="http://www.xyz.edu/students/bobsmith.html" itemprop="colleague"> Bob Smith</a> </div>
Вариант 2
<div itemscope itemtype="http://schema.org/Person"> <p itemprop="name">Алексей</p> <!-- Имя --> <p itemprop="additionalName"> Владимирович</p> <!-- Отчество --> <p itemprop="familyName"> Петров</p> <!-- Фамилия --> <p itemprop="jobTitle">веб-мастер</p> <!-- Должность --> <div> <a href="http://site.ru/about/" itemprop="sameAs">site.ru/about/</a>, <!-- Адрес оффициальной веб-страницы (вроде wikipedia), множественное --> <a href="http://site2.ru/users/who/" itemprop="sameAs">site2.ru/users/who/</a> <!-- Адрес оффициальной веб-страницы (вроде wikipedia), множественное --> </div> <div> <a href="http://ok.ru/who" itemprop="url">ok.ru/who</a>, <!-- Адрес веб-страницы, множественное --> <a href="http://twitter.com/who" itemprop="url">twitter.com/who</a>, <!-- Адрес веб-страницы, множественное --> <a href="http://vk.ru/who" itemprop="url">vk.ru/who</a> <!-- Адрес веб-страницы, множественное --> </div> <div> <span itemprop="telephone">8(495)123-45-67</span>, <!-- телефон, множественное --> <span itemprop="telephone">+7(926)12-34-567</span> <!-- телефон, множественное --> </div> <div> <span itemprop="email">[email protected]</span>, <!-- e-mail, множественное --> <span itemprop="email">[email protected]</span> <!-- e-mail, множественное --> </div> </div>
Микроразметка шапки сайта (schema.org/WPHeader)
Данная разметка описывает информацию о сайте.
<header itemscope itemtype="http://schema.org/WPHeader"> <meta itemprop="headline" content="Название сайта"> <meta itemprop="description" content="Описание сайта"> <meta itemprop="keywords" content="асфальт, москва, недорого, доставка"> </header>
Меню сайта тоже требует микроразметки. Хотя бы для того, чтобы поисковый робот понимал, из каких разделов состоит сайт. Это действительно нужный элемент, которым пренебрегать не стоит.
<nav itemscope itemtype="http://schema.org/SiteNavigationElement"> <a itemprop="url" href="mysite.com/news/">Новости</a> <a itemprop="url" href="mysite.com/articles/">Статьи</a> <a itemprop="url" href="mysite.com/contact/">Контакты</a> </nav>
Микроразметка боковой колонки сайта (schema.org/WPSideBar)
Что у нас обычно бывает в сайдбаре (боковой колонки сайта) ? Популярные статьи, последние комментарии, виджеты социальных сетей, реклама и какой-нибудь опрос — вот первое, что приходит в голову. Собственно, мы можем разметить все эти типы элементов, но проще всего — обозначить их в виде логических блоков.
<aside itemscope itemtype="http://schema.org/WPSideBar"> <section> <h4 itemprop="name">Группа ВКонтакте</h4> <!-- код виджета --> </section> <section> <h4 itemprop="name">Страница Facebook</h4> <!-- код виджета --> </section> <section> <h4 itemprop="name">Мой опрос</h4> <!-- код опроса --> </section> </aside>
Футер/footer — тот самый элемент внизу сайта, где обычно ещё раз пишут название сайта, копирайты, контакты и прочую информацию.
Если же у Вас колонтитул имеет множество элементов, характерных для организации — адреса, логотипы, контакты и т.п. — можно применить разметку с помощью типа Organization.
<footer itemscope="http://schema.org/WPFooter"> <div>MySite.com<span itemprop="copyrightYear">2017</span>. Все права защищены</div> </footer>
1.0.21 (11.04.2016) | Исправлена ошибка поля «Канонический URL» компонента «Article» (ISSUE #20) |
1.0.20 (01.01.1970) | Добавлено обрезание длинных строк в заголовке и описании Open Graph разметки (значения по умолчанию согласно стандарту Twitter Cards) |
1.0.19 (17.02.2016) |
|
1.0.18 (30.12.2015) | Неожиданный подарок от Деда Мороза — добавлена поддержа множественного атрибута «Фото» для Адресов и контактов Мест и Организаций типа «Бизнес» (со всеми атрибутами изображения) |
1.0.17 (30.12.2015) | Последнее новогоднее обновление 2015!
Обновление создано по баг-репорту Сергея Данилкина (sotbit)
|
1.0.16 (27.11.2015) | Незначительные изменения в работе компонента «Изображение» — в целях валидации кода W3ORG добавлен атрибут alt для изображений. |
1.0.15 (12.10.2015) | Незначительные изменения в работе компонента «Персона» — теперь ссылки и официальные ссылки требуют указания ftp://, http:// или https:// |
1.0.14 (22.07.2015) | Доработан компонент «Предложение». Добавлена поддержка наборов предложений, включая свойства:
Внесены соответсвующие правки в компоненты «Товар» и «Программы» |
1.0.13 (14.07.2015) | Добавлены компоненты:
|
1.0.12 (25.06.2015) | |
1.0.11 (02.06.2015) | Добавлен компонент «Видео» (очень большая схема в сумме более 70 различных свойств) |
1.0.10 (18.06.2015) | Схема Статьи дополнена свойствами для полноценной поддержки Яндексом
|
1.0.9 (11.06.2015) | Незначительные исправления и доработки по списку Issue в трекере https://github.com/lexnekr/coffeediz.schema/issues |
1.0.8 (11.06.2015) | Исправлена ошибка (проблемы Композитного режима) |
1.0.7 (09.06.2015) | Добавлены компоненты:
|
1.0.6 (08.06.2015) | Доработан в компонент «Изображение»:
|
1.0.5 (05.06.2015) | Добавлены компоненты schema.org:
|
1.0.4 (03.06.2015) | Добавлен компонент schema.org — Программы (coffeediz:schema.org.SoftwareApplication)
Компонент поддерживает следующие параметры:
|
1.0.3 (02.06.2015) | Незначительные изменения |
1.0.2 (29.05.2015) | Добавлен компонент schema.org — Изображение (coffeediz:schema.org.ImageObject) |
1.0.1 (29.04.2015) |
|
Микроразметка сайта — schema org и open graph
Микроразметка – это стандарт для семантической оптимизации страницы. Ее цель – помочь поисковым роботам понять, о чем говорится на странице, и представлять информацию в результатах выдачи более полно и релевантно.
schema.org
В 2011 году появилась микроразметка schema.org. Она представляет собой словарь тегов и атрибутов, которые встраиваются в стандартный HTML-код страницы и указывают поисковым роботам на точное содержание информации. Также с ее помощью формируются качественные сниппеты – информация, которая отображается в результатах выдачи.
Например, рассмотрим обычный HTML-заголовок
Титаник Титаник Титаник . Он может относится как к названию корабля, так и к названию успешного фильма, и появится в результатах выдачи по обоим запросам, что не совсем точно соответствует запросу пользователя. А для того, чтобы поисковики понимали семантическое значение информации, и была придумана микроразметка schema.org.
Этот стандарт используют самые главные поисковики — Google, Яндекс, Microsoft и Yahoo!
Основные атрибуты schema.org
Рассмотрим основные атрибуты на конкретном примере. Сделаем микроразметку для страницы, содержащей фильм Титаник.
Атрибут itemscope: выделяем сущность
Этот атрибут указывает поисковым системам обратить внимание на выделенную им часть страницы, так как речь идет о какой-то конкретной сущности. Добавим его в код html, содержащий информацию о фильме:
Титаник
Титаник
Атрибут itemtype – уточняем сущность
Теперь нужно уточнить, о какой именно сущности идет говорится на странице. Сделать это можно при помощи атрибута itemtype. Укажем, что тип данной сущности — фильм (тип Movie). Обратите внимание, что названия типов имеют вид URL:
Титаник
Атрибут itemprop – дополняем сущность
Можно указать дополнительную информацию о рассматриваемой сущности. Укажем режиссера, жанр фильма и поясним, что на странице содержится трейлер:
Режиссер: Джеймс Кэмерон ДрамаТитаник
С полным списком атрибутов можно ознакомится на официальной странице микроразметки.
При помощи schema.org можно размечать статьи, товары в интернет-магазине, видео- и аудиопубликации, рецепты и многое другое.
Open Graph
Open Graph – это стандарт для правильного отображения веб-страниц в социальных сетях.
Зачем нужен Open Graph?
При добавлении ссылки на веб-страницу в социальную сеть можно столкнуться с ее некорректным отображением. Например, вместо тематических изображений, которыми сопровождалась статья, в превью можно увидеть совершенно другой графический контент, который также был на данной странице. К примеру, это может быть рекламный баннер.
Чтобы быть уверенным в корректном отображении своей веб-страницы в социальных сетях, следует использовать стандарт Open Graph. Его создали разработчики социальной сети Facebook. Также этот стандарт поддерживают Вконтакте, Google+, Twitter, LinkedIn и Pinterest.
Основные мета-теги Open Graph
Для формирования красивого и правильного превью используются следующие четыре мета-тега: og:description, og:image, og:type и og:url. Рассмотрим их подробно.
Мета-тег og:description отвечает за описание материала, причем его размер может достигать 295 знаков.
Пример:
meta property=»og:description» content=»Разработка и продвижение сайтов»
В мета-теге og:type содержится тип добавляемого материала. Например, для указания типа статьи, нужно написать article. Если это аудиозапись песни – пишется music.song. Если это целый музыкальный альбом – указываем music.album.
Пример
В теге og:url находится ссылка на исходную страницу.
Пример:
Разметка Open Graph логична и интуитивно понятна, полный словарь с примерами можно посмотреть на ее официальном сайте.
Валидаторы микроразметки
Поисковые гиганты Google и Яндекс предлагают Вам проверить качество своей разметки на своих сайтах. Для Google — это проверка структурированных данных , а для российского поисковика – валидатор микроразметки.
Не стоит пренебрегать микроразметкой. Не сложная в изучении и применении, она поможет представить Ваш сайт в выгодном свете как для поисковых систем, так и для посетителей. Качественные сниппеты в результатах выдачи и интересно оформленные превью в социальных сетях будут способствовать привлечению дополнительного траффика на Ваш сайт.
Назад
Schema.org делает и другие элементы кода привлекательнее для поисковиков
Объясняем, чем заменить <img src=»/pictures/logo.svg»>, и даем инструкцию по работе с микроразметкой Schema.org.
Даже суперполезный, актуальный и качественный контент может остаться незамеченным вашей аудиторией, если поисковые роботы пройдут мимо него. Помочь веб-паукам можно с помощью микроразметки. Давайте разберемся, что она собой представляет, и что вы должны о ней знать, если хотите, чтобы ваш сайт приносил прибыль.
Язык, на котором говорят только роботы
Микроразметку часто называют единым языком, который одинаково понимают и трактуют веб-пауки всех поисковых систем. Этот язык роботы освоили еще в 2011 году. И с тех пор «общаются» только на нем. Для несведущего человека микроразметка — та еще тарабарщина. Сами посудите:
Сплошные HTML-коды. Однако именно благодаря им поисковые роботы безошибочно определяют, где на странице указаны контакты вашей компании, а где информация об оплате. Микроразметка используется не только для текстовой части сайта. Чтобы показать роботам, что картинка в шапке сайта — это ваш фирменный логотип, тоже нужно использовать фрагмент микроразметки.
Есть ли польза от микроразметки?
Часть SEO-специалистов считает, что тратить время на прописывание атрибутов на всех страницах сайта бессмысленно. Достаточно разметить «Контакты» и, например, «Новости». Якобы на результатах продвижения это практически не сказывается. Однако в аналитическом отчете «Яндекс и Google. Факторы ранжирования 2019» высказывается прямо противоположная точка зрения. Авторы отчета утверждают, что микроразметка schema.org — «новомодное веяние», однако использовать ее все-таки стоит, потому как она обеспечивает удобство пользователей. Ну а если пользователям удобно, то и поведенческие показатели улучшаются, на сайт привлекается более качественный трафик, а продвижение дает ощутимые результаты.
Чтобы наглядно показать, как Яндекс и Google оценивают сайты, которые не поленились разметить, мы вытащили из аналитического отчета вот такую замечательную диаграмму:
На ней отлично видно, что большая часть сайтов, попадающих в топ-3 и топ-30 поисковых систем, использует микроразметку. Думаем, это хороший повод, чтобы взять с них пример. Вы ведь хотите попасть на первую страницу Яндекса и Google?
К вопросу о том, как микроразметка влияет на веб-пауков и пользователей. Благодаря schema.org нужная информация автоматически подтягивается в сниппет и легко распознается роботами. Описание сайта, выводящееся в поиске, получается более подробным, что помогает снизить процент отказов. Ведь пользователь еще до посещения сайта понимает, найдет он на нем нужную информацию или нет. Релевантность страниц сайта увеличивается как для поисковых систем, так и для пользователей.
А кто это сказал вообще? Авторы аналитического отчета «Яндекс и Google. Факторы ранжирования 2019» — Михаил Волович и специалисты компании «Ашманов и партнеры». Если вы хотя бы краем уха слышали про SEO, то фамилию российского гуру продвижения вы точно узнали. Лаборатория «Ашманов и партнеры» с 2014 года анализирует работу поисковиков, вычисляет их алгоритмы и важные факторы ранжирования. Поэтому верить этим ребятам можно как себе.
Какими бывают микроразметки?
Используется для описания специальных данных, например, дат событий и отзывов. Содержат такие элементы, как itemscope (показывает, что относится к описанию объекта), itemtype (дает ссылку на тип объекта), itemprop (обозначает свойства объекта). В словарь микроданных входят все простые атрибуты, в том числе <span> и<div>.
Для этого типа разметки используют атрибут class, относящийся к тегам <span> и <div>. Он помогает давать описания типам данных, размещенных на страницах сайта. Например, на странице с анонсом мероприятия микроформаты используют для обозначения времени, даты и места, в котором состоится событие. Яндекс распознает следующие микроформаты: hCard, hRecipe и hReview. А Google — hProduct, GoodRelations и hCalendar.
Эта разметка основана на технологии Resource Description Framework. У нее расширенные возможности и она самодостаточна.
Тренды разметки задают поисковые системы. Google и Яндекс предпочитают микроданные schema.org, потому как они соединяют все удобство использование и массу возможностей. Именно о них мы и поговорим подробнее.
Эта микроразметка считается стандартной семантической разметкой, распознаваемой большинством поисковых систем. В ее словаре 815 типов, 1307 свойств и 289 значений, используя которые можно выделить фотографии, продукты/услуги, организации, комментарии и многое другое. Чтобы описать с помощью Schema.org какой-то элемент сайта, нужно использовать одну из многочисленных сущностей словаря. Например, обобщенное Thing («Нечто»). У этого типа сущности есть несколько основных свойств:
- Name («Название»),
- Description («Описание»),
- Url («Ссылка»),
- Image («Изображение»).
Остальные типы сущностей — частные случаи обобщенной категории и ее подтипов. Самыми популярными из них считаются Event («Событие»), Organization («Организация»), CreativeWork («Творческое произведение»). Первый тип сущности помогает обозначить время и место проведения мероприятия, его тип и участников. Второй — указать, где на сайте размещен логотип, контакты компании, ее местоположение, история и прочая полезная информация. Третий — описать сериал, книгу или песню, сообщить жанр произведения, его автора, прикрепить отзывы, вписать рейтинг.
Чтобы увидеть отличия сущностей, давайте рассмотрим, как делают микроразметку разных элементов сайта.
Логотип
Разметка этого элемента относится к основным и считается самой простой.
Выполняется она следующим образом:
- Находите на вашем сайте логотип. Если потерялись в обилии HTML-тегов, обращайте внимание только на те строки, в которых «зашиты» картинки. На большинстве сайтов (даже на тех, где частично сделана микроразметка) логотип прячется за тегом <img src=»/pictures/logo.svg»>
- Чтобы показать, что логотип — часть микроразметки, нужно присвоить ему атрибут itemscope. Он сообщит роботам, что на сайте есть некая сущность.
- Для уточнения типа этой сущности нам необходимо использовать атрибут itemtype. В кавычках указываем, что используем микроразметку schema.org, и прописываем название сущности (Organization).
- Размечаем ссылку на главную страницу нашего сайта, применяя атрибут itemprop.
- С помощью этого атрибута обозначаем и принадлежность изображения логотипа.
Контакты
Чтобы в выдаче сниппет вашей компании автоматически подтягивал контакты, нужно правильно разметить их.
- Открыть страницу “Контакты” и найти контейнер <div>, в котором прописаны адрес, телефон и название организации.
- Добавить к контейнеру атрибут itemscope, а затем itemtype.
- В обязательном порядке прописываем, какую именно разметку используем. Для этого в значении атрибута указываем ссылку на schema.org. И не забываем про сущность. Для разметки контактов и логотипа используется одна и та же сущность — Organization.
- Далее работаем с атрибутами itemprop. Каждому из них приписываем то значение, которое нам необходимо. Например, нам нужно указать название компании. Значит после названия атрибута прописываем name, а затем и его значение (т.е. название компании).
На нашем сайте это выглядит вот так:
Как видите, здесь мы обошлись без addressRegion. Если для вас указание области в контактах компании тоже непринципиально, то убирайте его.
Статья
Для этого элемента страницы микроразметку используют значительно реже, чем для двух предыдущих. В основном связано это с непониманием важности применения микроразметки на всех страницах сайта.
Давайте разберемся, как правильно размечать этот тип текстового контента. Для начала посмотрим, что мы видим после открытия статьи в виде HTML-кода.
Перед нами тело статьи с абзацами, подзаголовками и основным текстом. Для его разметки мы:
- Помещаем весь текст статьи в контейнер <section>. Тег парный, поэтому в конце статьи не забудьте проставить </section>.
- Внутри контейнера прописываем название заголовка, используя тег <h2 itemprop=”headline”>.
- Далее указываем дату и время публикации.
- Все изображения, используемые в статье, размечаем при помощи тегов <div> и <image>.
- Для разметки подзаголовков используем <h3 itemprop=”alternativeHeadline”>.
В результате получаем:
На нашем сайте мы делаем разметку статей следующим образом:
Товары/услуги
Прописывайте микроразметку пошагово и вы поймете, что делать ее ничуть не сложнее, чем вставлять <img src=»/pictures/logo.svg»> везде, где нужен логотип.
- Первым делом обозначим, что мы работаем с разметкой schema.org и ее сущностью Product.
- Затем укажем название товара, его цену, валюту, в которой он продается и дадим его краткое описание.
Если есть необходимость, можно указать и производителя, используя тег itemprop с атрибутами brand и model. Первый пригодится для отображения компании, выпустившей товар, а второй для указания модели. Нам, как вы понимаете, такой вариант разметки не подходит.
К слову, тем, кто не хочет отображать цены на сайте, нужно не забыть убрать атрибут price.
Хлебные крошки
Если микроразметку для logo вы уже используете, то про эту наверняка даже не слышали. Не переживайте, не только вы. Wildberries и Group Price тоже.
Зато другие компании вовсю используют эту микроразметку. Как вы уже поняли, увидеть это можно в поисковой выдаче:
Сделать такую разметку несложно, для уже названного сайта мы прописали ее за несколько минут:
Обратите внимание, мы использовали атрибут itemscope, чтобы показать, что прописываем хлебные крошки. BreadcrumbList для указания на разделы, и itemListElement — на пункты списка.
Меню
Поисковые роботы положительно реагируют и на микроразметку меню. С помощью schema.org это можно сделать следующим образом:
Если в вашем меню подпункты не нужны, просто уберите их.
Отзывы
Для разметки этого элемента сайта необходимо использовать тег itemprop и атрибут review. Чтобы обозначить заголовок, прописываем name, чтобы указать автора соответственно author. Текст комментария размечаем с помощью reviewBody, для указания даты публикации используем datePublished. А для разметки оценки отзыва (если она есть) — reviewRating.
На нашем сайте мы используем микроразметку schema.org для отзывов следующим образом:
Рекомендации по работе с микроразметкой schema.org
-
Не ленитесь размечать страницы своего сайта. Чем больше вы поработаете над «привлекательностью кодов» для поисковых роботов, тем больше станут показатели кликабельности и результаты продвижения. Единственное, что лучше не трогать — контент, невидимый пользователям. Иначе все тайное станет явным.
-
Если вы только начали знакомиться с микроразметкой schema.org, почаще заглядывайте в ее словарь. Там вы найдете сущности, о которых не знали, и выясните, как располагать одну сущность внутри другой. Такая суперспособность пригождается, когда вам надо описать одну из сущностей (например, Event), для которой потребуется указать несколько значений (например, время дату и место проведения).
-
Боитесь запутаться с вложенными сущностями? Тогда используйте URL, текст или дочерний тип. Разобраться с последним вполне реально, если вы сумели убрать с сайта <img src=»/pictures/logo.svg»> и обозначить логотип при помощи микроразметки.
-
Если страница пестрит сущностями, как новостная лента сообщениями о коронавирусе, используйте свойства url. Сначала размечаете каждую сущность по отдельности, затем добавляете в ссылки на страницы свойство урла. Получается та же вложенность, только в профиль.
Как проверять валидность разметки?
Даже если на языке разметки вы не только пишите, но и мыслите, проанализировать, насколько правильно вы использовали ее синтаксис, все равно необходимо. Сделать это помогут несколько валидаторов. Чаще всего применяют валидатор Google, названный Structured Data Testing Tool.
В нем вы можете как проверить всю страницу, указав ее URL, так и посмотреть правильность отдельного фрагмента. После загрузки кода со страницы или отдельного фрагмента, сервис показывает обнаруженные ошибки в правой части поля. Если их нет, это тоже будет видно.
В ближайшее время Google планирует прекратить поддержку этого валидатора, однако предлагает перейти на его аналог, расположенный на платформе Schema.org. На первый взгляд, новый инструмент для использующих микроразметку немногим отличается от предыдущего. У них идентичный дизайн и алгоритм действия, они оба русифицированы. Однако, как утверждает разработчик, свежий валидатор значительно проще старого. Он оценивает микроразметку в общем и помогает даже несведущим владельцам сайтов понять, все ли у них в порядке.
Использовать можно и валидатор от Яндекса. Он, как и сервис Google, позволяет вставлять как URL-страницы, так и отдельный фрагмент кода. Отечественный инструмент показывает, как страница будет выглядеть в глазах поискового робота.
При работе с микроразметкой у вас возникают ошибки? Не можете разобраться, как размечать ту или иную страницу? Мы поможем. Специалисты Студии ЯЛ в короткий срок пропишут микроразметку на всех страницах вашего сайта и улучшат его позиции в поисковых системах. Каких результатов мы добиваемся, вы можете узнать, посмотрев кейсы по SEO в нашем портфолио.
Максим Дель
Руководитель отдела SEO-продвижения Студии ЯЛ
Другие материалы:
Как добавить микроразметку Schema.org на страницы сайта
Любая страница сайта состоит из HTML тегов. Как правило, HTML теги сообщают браузеру как отобразить информацию, которая находится внутри тега. Таким же образом микроразметка Schema.org сообщает поисковым системам где находится та или иная важная информация на странице.
Если все еще есть трудности с проверкой позиций сайта и сейчас в поиске хорошего инструмента, то рекомендую статью, где я рассмотрел 4 сервиса, чтобы и автоматически настроить отчеты и где можно вручную проверять позиции:
Содержание
Если Вы еще не встречались раньше с микроразметкой и слышите об этом впервые, тогда перед прочтением данной статьи изучите следующую:
Чтобы быть в курсе последних лайфхаков по SEO и знать, как продвигать сайты в 2020 году — подпишитесь на личный Telegram канал.
Много о микроразметке Schema.org писать в данной статье не буду, потому что мы подробно все рассмотрели в прошлой статье.
В данной статье я хочу показать о том, как на практике сделать микроразметку на своем сайте, чтобы ее хорошо восприняли и Google и Yandex одновременно. Потому что многие сталкиваются с проблемами: для Yandex микроразметка нормально проходит валидацию (об этом читайте ниже), а вот для Google появляются ошибки, и наоборот. Да, это действительно так. Но всегда можно найти компромисс!
С помощью правильной микроразметки Schema.org Вы сможете передавать самые важные данные. То есть поисковому роботу информация подается сразу «на блюдечке». Для этого и была создана микроразметка поисковыми системами.
Основы микроразметки Schema.org
-
Что такое микроразметка сайта?
Микроразметка сайта — это способ показать поисковым системам важные элементы на вашем сайте. Также это способ создать расширенные сниппеты на поиске и получить больше кликов, увеличить CTR на поиске и, соответственно, улучшить позиции на поисковой выдаче.
-
Что такое Schema.org?
Schema.org — это словарь, с помощью которого можно размечать страницы, чтобы они были понятны поисковым системам Google, Яндекс, Mail.ru, DuckDuckGo, Bing, Rambler.
-
Есть ли Schema.org на русском?
Да, есть. Находится перевод проекта по адресу ruschema.org.
-
Как сделать разметку страницы или сайта?
-
Как проверить микроразметку на сайте?
-
Как проверить есть ли на сайте микроразметка?
-
Рекомендации Google по применению микроразметки
Большое количество рекомендаций по работе со структурированными данными от Google вы можете найти здесь с примерами.
-
Какую микроразметку использовать для своего сайта?
Изучите статью о том, какие бывают виды микроразметок. Так вам будет проще какой вид микроразметки использовать на сайте.
-
Генератор микроразметки Google
-
Как влияет разметка Schema на индексацию Google?
Никак не влияет на индексацию.
Не растут позиции сайта?
Закажите разбор сайта по SEO с консультацией
Сделайте аудит сайта самостоятельно с помощью сервиса
Как проверить «правильность» микроразметки Schema.org?
Для проверки валидации («правильности») микроразметки предназначены специальные сервисы, которые были разработаны поисковыми системами. Мы будем в данной статье проверять микроразметку для поисковой системы Yandex и Google.
Вот ссылки на два сервиса проверки валидации микроразметки Schema.org:
Сразу хочу предупредить: если Ваша страница прошла валидацию для одного сервиса, это не значит что она также пройдет и для другого. Поэтому, чтобы сделать полноценную валидацию для двух поисковых систем, Вам придется немного разобраться в том, что Вы делаете, а не просто копировать и вставлять код из данной статьи.
Как пользоваться валидаторами микроразметки?
Во-первых: чтобы использовать данные сервисы валидации Вам нет необходимости регистрироваться. Просто зайти по ссылкам выше сразу можете пользоваться. Сейчас буквально пару слов о каждом из валидаторов.
Итак, начнем с валидатора от Google. Страница выглядит следующим образом:
Есть два варианта проверки валидации страницы:
- С помощью прямой вставки HTML кода
- С помощью вставки URL адреса страницы, которую необходимо проверить
Первый вариант проверки больше подходит для того, чтобы просто найти тот самый правильный вариант микроразметки, а уже потом его перенести на реальный сайт. Это намного быстрее, чем постоянно изменять на своем работающем сайте и проверять его вводя URL страницы.
Второй вариант проверки необходимо использовать тогда, когда Вы уже внесли микроразметку на свой сайт. Это делается в самом конце.
После проверки в валидаторе Google появится слева код Вашей HTML страницы, а справа — какая микроразметка там присутствует и есть ли там ошибки:
С валидатором Google я думаю все понятно. Перейдем к валидатору от Yandex.
Когда Вы зайдете на сайт с валидатором микроразметки от Yandex, Вы увидите несколько иную картину, но смысл там остается тот же:
Здесь интерфейс немного проще и опять же есть два варианта проверки Вашего HTML кода: с помощью вставки исходного кода страницы, либо с помощью вставки лишь URL необходимой страницы.
После того как Вы проверили свою страницу на валидность микроразметки, Yandex покажет свои ошибки немного в другом формате, прямо рядом с микроразметкой:
Валидатор Yandex и Google будут давать Вам рекомендации сразу на русском языке. Но и этого бывает мало, потому что у всех ошибки разные и зависят от конкретного контекста страницы и HTML структуры.
Где проверять свою микроразметку Вы сейчас знаете. Поэтому немедленно перейдите на свой сайт, скопируйте URL ссылку первой же статьи и проверьте ее на валидацию.
Очень много ошибок? Не волнуйтесь, все можно исправить. Главное разобраться в этом постепенно исправить все ошибки.
Шаг 1. Что необходимо разметить на странице?
Словарь микроразметки Schema.org очень большой. Здесь можно найти формат разметки практически любого типа записей. В прошлой статье я приводил основной список форматов, которые поддерживаются данная микроразметка: адреса и организации, видео, программы, рефераты, изображения, статьи, фильмы и так далее.
Поэтому первым шагом необходимо определиться с основным шаблоном и правильно его подготовить. А у же потом переносит на реальный сайт.
В данной статье я покажу как сделать пример для сайта, под управлением CMS WordPress. А на данной CMS чаще всего создают блоги. Поэтому будем писать разметку для такого типа страниц, как «Статья».
Далее нам необходимо определить, какую сущность из словаря мы будем использовать. На официальном ресурсе Schema.org есть следующая структура: Article. Но внутри нее есть подструктуры, которые мы можем использовать. Спускаясь все глубже по подструктурам я нашел следующий тип: BlogPosting. Он является частным вариантом сущности Article. И он отлично подходит для разметки записей на блогах.
Сейчас определимся со структурой. Свойств там очень много. Вот скриншот лишь небольшой части из всех возможных:
Но, к счастью, не все свойства являются обязательными. Это радует. Вот наглядный пример разметки страницы:
Сейчас Вы понимаете какие свойства нам понадобятся для разметки страницы. Я сделал данное изображение, чтобы наглядно показать что именно необходимо указать с помощью микроразметки Schema.org. А из картинки выше понятно, что необходимо пометить самые важные зоны документа. Конечно, на изображении я показал не всю микроразметку, которую мы будем использовать, но Вам сейчас необходимо понять для чего вообще мы будем это делать и что именно попадет под разметку страницы.
Шаг 2. Формируем шаблон микроразметки
Что именно будем размечать стало понятно. Осталось собрать правильную структуру.
Основная суть микроразметки (технически): добавить к необходимым тегам дополнительные атрибуты. Иногда добавить дополнительные теги для структуры.
ВАЖНО: Google постоянно вносит изменения и оставил «звездочки» только для страниц с продуктами. Есть сайты, которые это обходят, но все же желательно размечать так, как этого требует Schema.org. Поэтому сейчас код был изменен и «звездочки» на поиске можно сделать только в сущности Product. Это больше относится к таким услугам и товарам, но не к обычным статьям.
Без прелюдий перейдем сразу к делу. После многочисленных попыток сделать микроразметку Schema.org валидной для Google и Яндекса получилась следующая структура:
HTML КОД
Юрий НемецОсновной текст статьи.
Так выглядит обычная статья без сторонних дополнений. Код получился действительно немаленький. Сейчас поясню буквально по строкам и расскажу где какие присутствуют нюансы:
Сейчас прошу не пугаться большого описания и самого HTML кода. Я старался все прокомментировать, чтобы Вы видели из чего состоит обычная статья и какие атрибуты необходимо прописать.
Если Вы разобрались в структуре микроразметки Schema.org для статьи, то проделали уже 80% работы. Осталось малость, но эта «малость» требует технических знаний. Потому что сейчас необходимо перенести данную структуру на реальный работающий сайт.
Есть вариант сделать проще с помощью мастера разметки структурированных данных от Google.
Когда попадете туда — увидите следующее:
Необходимо выбрать, что хотите разметить: вакансия, набор данных, продукты, страница ответов на вопрос, мероприятия, отзывы о книгах, рестораны, телесериалы, местные организации, приложеня, статьи или фильмы.
Чтобы разметить, необходимо либо ввести URL страницы, либо вставить HTML этой же страницы.
Мы введем адрес одной из статей сайта и на его примере покажу как разметить:
Вы попадете на страницу, где справа будут указаны элементы, которые необходимо пометить на странице слева.
Делается очень просто — вам лишь необходимо выделить элемент слева и затем выбрать к чему он относится.
Когда закончите, необходимо кликнуть справа вверху по кнопке «Создать HTML». Вас перенаправит на страницу с готовым HTML кодом и разметкой для вставки на сайт:
Есть 2 варианта внедрения этой разметки на свой сайт:
В CMS, таких как WordPress, OpenCart и других все делается с помощью плагинов, не вручную. Ниже посмотрим с помощью каких плагинов.
Шаг 3. Внедряем микроразметку Schema.org на реальный сайт
Многие используют различные CMS. Поэтому нет уникального кода, который бы работал сразу на любом сайте. Но у Вас есть код микроразметки, который получился у меня в ходе многочисленных поисков. Вам останется постепенно внедрить данную разметку на своем сайте. И сейчас я дам советы, которые помогут Вам в этом:
- Начинайте разметку с основных структур. То есть для начала разметьте основную сущность, внутри которой находятся все остальные элементы. Поэтому сначала необходимо найти блок, в котором содержится все: изображение, автор, дата и так далее;
- Далее займитесь разметкой блока «Organization». Потому что он не меняется динамически. Его необходимо один раз сделать и поместить внутрь сущности «BlogPosting». Данный блок затем скройте с помощью CSS стилей.
- Затем необходимо разметить дату публикации и дату последнего изменения. Сделать это несложно. В каждой CMS есть своя функция, которая отвечает за это. Так как это мета-теги, то скрывать ничего не нужно. Например в WordPress дата публикации и дата изменения выводятся следующим образом:
- Далее отметьте подструктуру «articleBody». Именно внутри нее Вам необходимо будет указать заголовок и главное изображение статьи.
- И последним шагом исправьте разметку главного изображения в статье. Так как это, чаще всего, сделать технически сложнее всего, то оставьте данный элемент на концовку.
После внедрения обязательно проверьте с помощью валидаторов на отсутствие ошибок.
Для некоторых типов микроразметки (например, рецепты) доступен предварительный просмотр. Сразу можно увидеть, как будет отображаться ваш пост после микроразметки в поисковой выдаче:
Кликаете в правом верхнем углу по кнопке «Предварительный просмотр» и попадаете на странице предпросмотра:
Позиции сайта «зависли» и не идут в ТОП?
Закажите разбор сайта по SEO с консультацией
Сделайте аудит сайта самостоятельно с помощью сервиса
Микроразметка FAQ от Schema.org
Как увеличить CTR на поиске за 15 минут?
Очень легко, нужно лишь добавить микроразметку FAQ в свою статью и отправить на переиндексацию в Google.
Вот пример статьи, где я добавил микроразметку:
Как добавить такую микроразметку?
Очень легко, достаточно в исходный код страницы вставить следующий JSON внутри тегов script:
Еще несколько советов по использованию:
Используйте 4 пункта, тогда будут показываться все 4 вопроса. Если напишете больше 4 вопросов, то последний пункт будет скрыт под элемент «Развернуть».
Обязательно проверьте микроразметку на валидаторе Google, чтобы она была без ошибок (только потом отправьте ее на переиндексацию). Если по тем ошибкам непонятно, как исправить, тогда советую проверить на валидаторе JSON — здесь. Если и там не удалось найти ошибку, то можете написать в комментариях к статье, либо обратиться к техническому специалисту.
Если все сделали правильно, то достаточно буквально 15-30 минут и вы увидите в поиске в сниппете микроразметку.
Важно заметить, что микроразметка появляется не под всеми ключевыми словами, под которые продвигается статья.
Ошибки микроразметки Schema.org
Рассмотрим самые популярные ошибки при добавлении микроразметки Schema.
-
Необходимо указать значение для поля itemReviewed
Здесь нужно понимать для чего нужно свойство itemReviewed.
Это свойство, которое отдельно без сущности существовать не может. Сущностью для свойства может быть AggregateRating и Review.
Это обязательное свойство для данных сущностей, поэтому его указать, иначе звездочки на поиске не появятся.
-
Необходимо указать значение для поля item
Это свойство используется в сущностях DataFeedItem и ListItem.
Например, вы хотите разметить «хлебные крошки» (BreadCrubms). Внутри элементов списка необходимо использовать для ссылок данное свойство:
- SEO
- Внутренняя перелинковка
-
Необходимо указать значение для поля url
Это поле используется во многих сущностях. Если вы видите такую ошибку на валидаторе, то вам необходимо указать это поле внутри вашей сущности. Для каждой CMS вывод ссылки на новость отличается.
-
Необходимо указать значение для поля image
Это может быть URL или сущность ImageObject.
Если это ImageObject, то нужно вводить гораздо больше значений:
Название изображения
Автор Юрий Немец Фотография сделана Россия, Москва Дата загрузки: 22 декабря, 2020 Подробное описание изображения.Самое важное поле — это URL.
-
Для id указан недопустимый url
Ошибка чаще всего возникает с сущностью BreadcrumbList когда не задан URL, а используется текстовое описание.
Внимательно изучите сущность itemListElement, потому что она используется для BreadCrumbs.
-
Необходимо указать значение для поля itemListElement
Это ошибка при разметке «хлебных крошек» на сайте. Если хотите сделать последний элемент списка неактивным (без ссылки), то он должен быть не BreadcrumbList элементом. Пример ниже:
Частозадаваемые вопросы по микроразметке Schema.org
-
Itemprop что это?
Itemprop — это свойство сущности для разметки подробных сведений об этой сущности.
На примере: есть сущность для разметки фильма. У фильма есть много свойств: название, режиссер, жанр. Чтобы указать в микроразметке каждое свойство — необходимо в соответствующем атрибуте itemprop задать ему значение.
Режиссер: Адиль Эль Арби (род. 30 июня 1988 г.) Комедия
Обратите внимание, что нужно разметить и сам фильм и трейлер, либо информацию о трейлере совсем не вводить.
-
Как узнать тип микроразметки в Гугл?
-
Как разместить URL сайта в Schema.org?
Все зависит от того, какую сущность микроразметки вы используете.
Например, если используете сущность BlogPosting (на русском эта же сущность), то используйте следующий код:
-
Каким образом можно проверить корректность настройки микроразметки?
Корректность настройки микроразметки проверяется с помощью валидаторов.
-
Плагины внедрения микроразметки для CMS
-
Как выбрать тип Schema.org?
Рекомендую зайти на следующую страницу — структурированные данные от Google. Слева выбрать тот материал, который вам нравится и затем разметить в соотвествии с рекомендациями.
-
Как исправить ошибку микроданных в Google?
Чтобы исправить ошибку — необходимо хорошо разобраться в сущности, которую вы размечаете.
Чаще ошибка связана не с микроразметкой Schema, а именно с незнанием технической части сайта или CMS. Задать свой вопрос вы можете в комментариях ниже.
-
Каким разметить номер телефона с помощью Schema.org?
Есть свойство Telephone. Важно понимать, что это лишь свойство, оно должно быть внутри сущности, например, внутри сущности Organization.
-
Как создать микроразметку для Яндекса онлайн?
Для Яндекс и для Google можно создать шаблон микроразметки с помощью генератора.
-
Валидатор не видит разметку
Скорее всего у вас вторая ситуация и вам необходимо очень внимательно изучить сущность, которую размечаете. Если проблемы остаются — задайте их в комментариях.
-
Плагин проверки микроразметки в браузере Chrome
-
Как добавить микроразметку для сайтов на Wix? (Schema.org)
На самом деле это актуально для любого конструктора.
Для начала вам необходимо сформировать скрипт в формате JSON-LD через этот генератор.
Затем скопировать этот скрипт, перейти в раздел редактирование сайта. Там выбрать «Настройки», далее «Коды аналитики». Выбираем справа вверху «Новый инструмент», далее «Новый код».
Вставляем скопированный скрипт в формате JSON-LD.
Осталось сохранить и проверить на валидаторе правильность разметки.
-
Как добавить микроразметку для сайтов на Tilda? (Schema.org)
Генерируем скрипт в формате JSON-LD, как в ответе на предыдущий вопрос про Wix.
На Тильде заходим в «Настройки страницы», затем «Дополнительно» и далее «HTML код для зоны». Кликаем «Edit code» (редактировать код).
Вставляем скопированный код и сохраняем.
Вывод
Многие, возможно, начнут возмущаться, что нет готового решения, которого все так ждали. Все хотят волшебную таблетку: «скопировал->вставил». Такого не будет, если Вы хотите реальных и ощутимых результатов. У Вас индивидуальный шаблон, у которого своя собственная структура. Поэтому наберитесь терпения и разберетесь в том, как устроена микроразметка Schema.org.
Что касается технической части, то скажу вот что: либо отдайте это дело профессионалу, либо самостоятельно разберитесь в том, что я описал в данной статье.
Успехов!
С Уважением, Юрий Немец
Microdata — HTML: HyperText Markup Language
Microdata является частью стандарта WHATWG HTML и используется для вложения метаданных в существующий контент на веб-страницах. Поисковые системы и веб-сканеры могут извлекать и обрабатывать микроданные с веб-страницы и использовать их для обеспечения более удобного просмотра для пользователей. Поисковые системы получают большую выгоду от прямого доступа к этим структурированным данным, поскольку он позволяет поисковым системам понимать информацию на веб-страницах и предоставлять пользователям более релевантные результаты.В микроданных используется вспомогательный словарь для описания элемента и пар «имя-значение» для присвоения значений его свойствам. Микроданные — это попытка предоставить более простой способ аннотирования HTML-элементов с помощью машиночитаемых тегов, чем аналогичные подходы с использованием RDFa и классических микроформатов.
На высоком уровне микроданные состоят из группы пар имя-значение. Группы называются элементами, а каждая пара имя-значение является свойством. Предметы и свойства представлены обычными элементами.
- Для создания элемента используется атрибут itemscope .
- Чтобы добавить свойство к элементу, атрибут itemprop используется для одного из потомков элемента.
Google и другие основные поисковые системы поддерживают словарь Schema.org для структурированных данных. Этот словарь определяет стандартный набор имен типов и имен свойств, например, Schema.org Music Event указывает концертное выступление, а свойства startDate и location определяют ключевые детали концерта. В этом случае музыкальное событие Schema.org будет URL-адресом, используемым itemtype и startDate, а location — этой схемой itemprop.org Music Event определяет.
Словари микроданных обеспечивают семантику или значение элемента. Веб-разработчики могут создавать собственные словари или использовать словари, доступные в Интернете, например, широко используемый словарь schema.org. Коллекция часто используемых словарей разметки предоставлена Schema.org.
Часто используемых словарей:
- Творческие работы: CreativeWork, Book, Movie, MusicRecording, Recipe, TVSeries
- Встроенные нетекстовые объекты: AudioObject, ImageObject, VideoObject
- Событие
- Медицинские и медицинские типы: примечания к медицинским и медицинским видам в рамках MedicalEntity
- Организация
- Человек
- Place, LocalBusiness, Ресторан
- Продукт, предложение, Совокупное предложение Обзор
- , AggregateRating
- Действие
- Вещь
- Нематериальные активы
Основные операторы поисковых систем, такие как Google, Microsoft и Yahoo! полагаться на схему.org словарь для улучшения результатов поиска. Для некоторых целей достаточно специальной лексики. Для других потребуется составить словарный запас. По возможности авторам рекомендуется повторно использовать существующие словари, так как это упрощает повторное использование контента.
В некоторых случаях поисковые системы, охватывающие определенные регионы, могут предоставлять локальные расширения микроданных. Например, Яндекс, основная поисковая система в России, поддерживает такие микроформаты, как hCard (контактная информация компании), hRecipe (рецепт еды), hReview (обзоры рынка) и hProduct (данные о товарах), а также предоставляет собственный формат для определения термины и энциклопедические статьи.Это расширение было сделано для решения проблем с транслитерацией между кириллицей и латинским алфавитом. Благодаря внедрению дополнительных параметров маркировки словаря Schema, индексация информации на русскоязычных веб-страницах стала значительно более успешной.
itemid — уникальный глобальный идентификатор элемента.
itemprop — Используется для добавления свойств к элементу. Для каждого элемента HTML может быть указан атрибут itemprop, где itemprop состоит из пары имени и значения.
itemref — Свойства, которые не являются потомками элемента с атрибутом itemscope
, могут быть связаны с элементом с помощью itemref . Itemref предоставляет список идентификаторов элементов (не itemid
s) с дополнительными свойствами в другом месте документа.
itemscope — Itemscope (обычно) работает вместе с itemtype, чтобы указать, что HTML-код, содержащийся в блоке, относится к определенному элементу. itemscope создает элемент и определяет область связанного с ним типа элемента.itemtype — это действительный URL-адрес словаря (например, schema.org), который описывает элемент и контекст его свойств.
itemtype — указывает URL-адрес словаря, который будет использоваться для определения itemprop (свойств элемента) в структуре данных. Itemscope используется для установки области, в которой в структуре данных будет активен словарь, заданный типом элемента.
HTML
Angry Birds -
ТРЕБУЕТСЯ ANDROID
РЕЙТИНГ:
4,6 (
8864 оценок)
Цена: 1,00
Структурированные данные
itemscope | тип позиции | SoftwareApplication (http: // schema.org / SoftwareApplication) | |
itemprop | название | Злые птицы | |
itemprop | Операционная системаANDROID | ||
itemprop | ПриложениеКатегория | GameApplication (http://schema.org/GameApplication) | |
шт. Объем | itemprop [тип элемента] | aggregateRating [AggregateRating] | |
itemprop | РейтингЗначение | 4.6 | |
itemprop | рейтингКоличество | 8864 | |
шт. Объем | itemprop [тип элемента] | предложения [Предложение] | |
itemprop | цена | 1,00 | |
itemprop | ЦенаВалюта | долларов США |
Результат
Поддерживается в Firefox 16. Удалено в Firefox 49.
Микроданные HTML
Микроданные HTMLАбстрактные
Эта спецификация [ html-extensions ] определяет новые атрибуты HTML. для встраивания простых машиночитаемых данных в HTML-документы.Он похож на RDFa, но в целом менее выразителен, и не поддерживает такой же уровень интернационализации. Его легко изучить и обработать, но авторы, которым нужна хорошая поддержка интернационализации, или желающие включить структурированный контент в свои данные должны рассмотреть возможность использования RDFa. (или другой формат, например JSON-LD).
Статус этого документа
В этом разделе описывается статус этого документа на момент его публикации. Другие документы могут заменять этот документ.Список текущих публикаций W3C и последнюю версию этого технического отчета можно найти в указателе технических отчетов W3C по адресу https://www.w3.org/TR/.
🚩
Это
документ устарел, и номер НЕ ДОЛЖЕН использоваться для дальнейшей технической работы.
Вместо этого ознакомьтесь с HTML-стандартом жизни и поднимайте вопросы в
репозиторий whatwg / html.
🚩 Устаревший документ. Не использовать.
Публикацияв качестве примечания рабочей группы не означает одобрения W3C членством.Этот документ устарел и больше не обновляется. Неуместно ссылаться на этот документ как на работу на пенсии.
Изначально этот документ был подготовлен группой, действующей в соответствии с Патентной политикой W3C.
Этот документ регулируется Документом процесса W3C от 15 сентября 2020 года.
Содержание
- 1. Зависимости
- 2. Терминология
- 3. Соответствие
- 4. Введение
- 4.1 Обзор
- 4.2 Базовый синтаксис
- 4.3 Типизированные элементы
- 4.4 Глобальные идентификаторы для элементов
- 4.5 Выбор имен при определении словарей
- 5. Кодирование микроданных
- 5.1 Модель микроданных
- 5.2 Элементы:
itemscope
,itemtype
, иitemid
- 5.3 Свойства: атрибуты
itemprop
иitemref
- 5.4 Значения: атрибут содержимого
- 5.5 Связывание имен с элементами
- 6. Преобразование микроданных в другие форматы
- 6.1 JSON
- 6.2 RDFa
- 7. Изменения в HTML
- 7.1 Новые атрибуты
- 7.2 Модели содержимого
- 8. Микроданные и RDF
- 9. Доступность и микроданные
- 10. Интернационализация и локализация
- 11. Вопросы конфиденциальности
- 12. Вопросы безопасности
- 13. Соображения IANA
- 14.Изменения
- 15. Благодарности
- A. Ссылки
- A.1 Нормативные ссылки
- A.2 Информационные ссылки
1. Зависимости
Эта спецификация является расширением HTML. Все нормативное содержимое в спецификации HTML, специально не отмененное данной спецификацией. является нормативным для данной спецификации. Эта спецификация зависит от спецификации HTML и ее расширений для определения отдельных элементов и атрибутов HTML.[ HTML52 ] [ HTML-расширения ]
2. Терминология
Для целей данной спецификации термины «URL» и «URI» эквивалентны. Спецификация URL и RFC 3986, в котором используется термин URI, определяют URL , действительный URL-адрес и абсолютный URL-адрес . [ RFC3986 ] [ URL ]
Действительный абсолютный URL — это действительный абсолютный URL.
RFC 3986 определяет термин для разрешения URL [ RFC3986 ].
DOM 4.1 определяет textContent
для атрибутов, а также для элементов или узлов,
а также срок , порядок дерева . [ DOM41 ]
Эта спецификация основана на спецификации HTML для определения следующих терминов: [ HTML52 ]
- пробел , разбивает строку на пробелы , а неупорядоченный набор уникальных токенов, разделенных пробелами .
- Элемент HTML , глобальный атрибут , логический атрибут .
- Элемент ID и язык .
- флоу-контент и фразировочный контент .
3. Соответствие
А также разделы, помеченные как ненормативные, все авторские руководства, схемы, примеры, и примечания в этой спецификации не являются нормативными. Все остальное в этой спецификации нормативный.
Ключевые слова «должен», «не должен», «должен», «не должен» и «может» в нормативных частях данного документа. следует интерпретировать, как описано в RFC2119.[ RFC2119 ]
Требования, сформулированные в императиве как часть алгоритмов (например, «удалить любой начальный пробел символы «или» вернуть ложь и прервать эти шаги «) следует интерпретировать со значением ключевое слово («должен», «должен», «может» и т. д.), используемое при представлении алгоритма.
Пример 1: язык соответствия
Например, в спецификации говорилось:
Чтобы съесть апельсин, пользователь должен: 1. Очистить апельсин. 2. Отделите каждый ломтик апельсина.3. Съешьте дольки апельсина.
… это будет эквивалентно следующему:
Чтобы съесть апельсин: 1. Пользователь должен очистить апельсин. 2. Пользователь должен отделить каждый ломтик апельсина. 3. Пользователь должен съесть дольки апельсина.
Здесь ключевое слово «должен».
Прежний (императивный) стиль обычно предпочтительнее в данной спецификации для стилистического оформления. причины.
Требования соответствия, сформулированные в виде алгоритмов или конкретных шагов, могут быть реализованы в любом способом, при условии, что конечный результат эквивалентен.(В частности, алгоритмы, определенные в этом спецификации предназначены для простоты выполнения и не предназначены для выполнения.)
4. Введение
4.1 Обзор
Этот раздел не является нормативным.
Иногда желательно аннотировать контент специальными машиночитаемыми метками. Например, поисковые системы могут лучше определять содержимое страницы с помощью аннотаций schema.org, а системы управления контентом могут находить и использовать информацию из документов, если она размечена известным способом.
Microdata обеспечивает простой механизм маркировки содержимого документа, поэтому его можно обрабатывать как набор элементов описывается парами имя-значение.
Каждая пара имя-значение идентифицирует свойство элемента и значение этого свойства.
фигура 1 Распространенный способ графического представления элементов, свойств и значений Элемент ItemItemA PropertyPropertyA ValueValueЗначение свойства может быть элементом.
4.2 Базовый синтаксис
Этот раздел не является нормативным.
Предметы и свойства обычно представлены обычными элементами.
Атрибут itemscope
создает элемент.
Атрибут itemprop
в дочернем элементе элемента
определяет свойство этого элемента.
Обычно текстовое содержимое этого элемента является значением этого свойства.
Здесь есть два элемента, каждый из которых имеет свойство «имя»:
Рисунок 2 Пример, представленный графически: два элемента, каждый со значением свойстваМеня зовут Элизабет .
Меня зовут Дэниел .
name
.Название предмета Элизабет Название предмета Дэниел
Разметка, отличная от атрибутов микроданных, не влияет на микроданные.
Эти два примера на уровне микроданных в точности эквивалентны двум предыдущим примерам. соответственно:
<раздел>Мое имя Э лиз абет .
<сторона>Меня зовут Дэниел .
Предупреждение
Обратите внимание, что это означает любую информацию, записанную в разметке для таких целей, как интернационализация. или доступность будет потеряна при преобразовании в данные. Авторы, желающие сохранить разметку в машиночитаемых форматах следует рассмотреть возможность использования возможности RDFa использовать тип данных XMLLiteral.
Свойства обычно имеют значения, которые являются строками.
Здесь у предмета три свойства:
Меня зовут Нил .
Моя группа называется Four Parts Water .
Я британец .
Если текст, который обычно является значением свойства, например содержимым элемента,
не подходит для записи стоимости недвижимости,
это может быть выражено с помощью атрибута content
элемента.
Здесь видимый контент может быть добавлен скриптом.
Процессор микроданных может извлекать контент из атрибута content
без запуска скриптов.
Значение свойства product-id для этого элемента составляет 9678AOU879
Когда строковое значение находится в каком-либо машиночитаемом формате, который не подходит для представления в качестве содержимого элемента,
это может быть выражено с помощью атрибута значения элемента
data
,
пока нет содержимого
атрибута.
Здесь есть элемент со свойством, значение которого является идентификатором продукта. Идентификатор не
удобен для человека, поэтому вместо этого он кодируется для микроданных с использованием атрибута value
элемента данных
, а название продукта используется в качестве текстового содержимого элемента
который отображается на странице.
Рис. 3 Пример, представленный графически в виде микроданных: элементы, свойствоThe Instigator 2000
product-id
имеет значение 9678AOU879 Itemproduct-id9678AOU879Предупреждение
Это не сработает, если есть атрибут content
.В следующем примере
значение свойства product-id берется из атрибута content
, поэтому оно будет Это круто! :
Рис. 4 Пример, представленный графически в виде микроданных: элементы, свойствоThe Instigator 2000
product-id
имеет значение Этот рок! Itemproduct-idЭто Rocks! Когда itemprop
используется в элементе, который может иметь атрибут src
или href
,
такие как ссылки и элементы мультимедиа, не имеет атрибута содержимого
,
значение пары имя-значение является абсолютным URL-адресом на основе src
или href
атрибут (или пустая строка, если они отсутствуют или возникла ошибка).
В этом примере у элемента есть одно свойство, logo , значение которого является URL-адресом в зависимости от местоположения страницы и заканчивается на our-logo.png :
Предупреждение
Обратите внимание, что информация о специальных возможностях, такая как атрибут alt
в предыдущем примере,
игнорируется.Чтобы указать это как значение, повторите его в атрибуте content
. В следующем примере значение название собственность Компания :
Для числовых данных - элемент счетчика
и его значение атрибут
может использоваться вместо него, если нет атрибута content
.
Здесь рейтинг 3,5 дается с использованием элемента метров
.
Белый холодильник Panasonic на 60 лОценка 3,5 / 5 (на основе 11 отзывов клиентов)
Аналогичным образом, для данных, связанных с датой и временем, элемент time
и его datetime Атрибут
может использоваться для указания даты или времени в специальном формате,
пока нет содержимого
атрибута.
В этом примере элемент имеет одно свойство, «день рождения», значением которого является дата:
Я родился .
Свойства также могут быть группами пар "имя-значение", если поставить
атрибут
на элементе, объявляющем свойство. itemscope
Элементы, не являющиеся частью других, называются элементами микроданных верхнего уровня.
В этом примере внешний элемент представляет человека, а внутренний - полосу:
Имя: Аманда
Группа: Джаз-бэнд ( 12 игроков)
Внешний элемент здесь имеет два свойства: «имя» и «диапазон».«Имя» - «Аманда», а «band» - это самостоятельный элемент с двумя свойствами: «name» и «size». Имя группа «Джаз-бэнд», а «размер» - «12».
Внешний элемент в этом примере является элементом микроданных верхнего уровня.
Свойства, не являющиеся потомками элемента с
атрибут
можно связать с элементом с помощью itemscope
атрибут.
Этот атрибут принимает список идентификаторов элементов для сканирования в дополнение к сканированию дочерних элементов
элемент с атрибутом itemref
. itemscope
Этот пример аналогичен предыдущему, но все свойства отделены от их товаров:
Имя: Аманда
Группа: Джаз-бэнд
Размер: 12 игроков
Это дает тот же результат, что и в предыдущем примере.Первый элемент имеет два свойства: «имя», установите на «Аманда», а «группа» установите на другой элемент. У второго элемента есть еще два свойства: "name" - "Jazz Band", "size" - "12".
Элемент может иметь несколько свойств с одинаковым именем и разные значения.
В этом примере описывается мороженое с двумя вкусами:
Ароматы моего любимого мороженого:
- Лимонный сорбет
- Абрикосовый сорбет
Таким образом, получается предмет с двумя свойствами, оба «аромат», со значениями «Лимонный сорбет »и« Абрикосовый сорбет ».
Элемент, представляющий свойство, может также вводить сразу несколько свойств, чтобы избежать дублирование, когда некоторые свойства имеют одинаковое значение.
Здесь мы видим элемент с двумя свойствами, "любимый цвет" и "любимый фрукт", для обоих задано значение значение «апельсин»:
оранжевый
Важно отметить, что нет никакой связи между микроданными и содержанием документ, в котором размечены микроданные.
Следующие два примера - это одни и те же микроданные, поскольку при обработке они производят точно такую же информацию:
<рисунок><диапазон элементов> <диапазон itemprop = "name"> Замок (1986)
<рисунок>Замок (1986)
У обоих есть фигура с подписью, и у обеих, совершенно не связанных с фигурой, есть предмет с парой имя-значение с именем «имя» и значением «Замок». Ни в том, ни в другом случае изображение никоим образом не связано с предметом.
4.3 Набранные позиции
Этот раздел не является нормативным.
Примеры в предыдущем разделе показывают, как можно разметить информацию на странице, которая не ожидает повторного использования микроданных.Однако микроданные наиболее полезны, когда они используются в контексты, в которых другие авторы и читатели могут сотрудничать, чтобы по-новому использовать разметку.
Для этого необходимо дать каждому элементу тип, например, «http://example.com/person», «http://example.org/cat» или «http://band.example.net/». Типы идентифицируются как URL-адреса.
Тип элемента задается как значение
атрибут того же элемента, что и itemtype
атрибут.Значением является URL-адрес, который определяет словарный идентификатор для свойств itemscope
Предположим, что страница http://example.net/some/dataexample содержит следующий код:
Хедрал
Хедрал - домашний американский мужчина. короткошерстный, с пушистой черной шерстью, с белыми лапами и брюшком.
Тип элемента - «http: // example.org / animals # cat "
"В этом примере элемент «http://example.org/animals#cat» имеет три свойства:
- http://example.org/animals#name
- «Хедраль»
- http://example.org/animals#desc
- Хедрал (Hedral) - американский домашний короткошерстный кот с пушистым черным мехом, белыми лапами и животом.
- http://example.org/animals#img
- hedral.jpeg
Тип дает контекст для свойств, таким образом выбирая словарь: свойство с именем
"class" задан для элемента с типом "http: // census.пример / человек "может относиться к экономическому
класс отдельного лица, а свойство с именем "класс" задано для элемента с типом
«http://example.com/school/teacher» может относиться к классу, который назначен учителю.
Словарь может определять несколько типов. Например, типы
« http://example.org/people/teacher
» и « http://example.org/people/engineer
»
могут быть определены в том же словаре. Некоторые свойства могут оказаться не особенно полезными в обоих случаях:
свойство « classroom
» может не иметь смысла с примером « http: //.орг / человек / инженер
"тип.
Для одного элемента можно указать несколько типов из одного словаря, перечислив URL-адреса, разделенные пробелами,
в значении атрибута. Однако элементу нельзя присвоить два типа, если они не используют один и тот же словарь.
4.4 Глобальные идентификаторы товаров
Этот раздел не является нормативным.
Иногда элемент дает информацию по теме, имеющей глобальный идентификатор. Например, книги можно идентифицировать по номеру ISBN, или концепции могут быть идентифицированы по URL-адресу, как в [ rdf-primer ].
Атрибут
связывает элемент с глобальным идентификатором
в виде URL-адреса. itemid
Здесь элемент говорит о конкретной книге:
- Заголовок
- Дисфункция реальности
- Автор
- Питер Ф. Гамильтон
- Дата публикации
4.5 Выбор имен при определении словарей
Этот раздел не является нормативным.
Использование микроданных означает использование словаря. Для некоторых целей достаточно специальной лексики, но авторам рекомендуется повторно использовать существующие словари, чтобы упростить повторное использование контента.
При разработке новых словарей идентификаторы могут быть созданы либо с помощью URL-адреса или, для свойств, простые слова (без точек и двоеточий). Для URL-адресов конфликтов с другими словарями можно избежать, используя только идентификаторы, соответствующие страницы, контролируемые автором.
Например, если Джон и Адам оба пишут контент на example.com
, на http: //example.com/~jon / ...
и http: //example.com/~adam / ...
соответственно, тогда
они могли выбирать идентификаторы формы
«http://example.com/~jon/name» и «http://example.com/~adam/name»
соответственно.
Свойства, названия которых представляют собой простые слова, могут использоваться только в контексте типов. для чего они предназначены; свойства, названные с помощью URL-адресов, могут быть повторно использованы в элементах любого типа.Если элемент не имеет типа и не является частью другого элемента, тогда, если его свойства имеют имена, которые просто простыми словами, они не предназначены для того, чтобы быть уникальными в глобальном масштабе, а предназначены только для ограниченное использование. Вообще говоря, авторам рекомендуется использовать любое из свойств с глобально уникальные имена (URL-адреса) или убедитесь, что их элементы введены.
Здесь элемент на странице http://example.net/some/dataexample - это "http://myvocab.example.org/animals/cat", и большинство свойств имеют имена, определенные в контексте этого типа.Есть также несколько дополнительных свойств, имена которых взяты из других словарей.
Hedral
Хедрал - домашний американский мужчина. короткошерстный, с пушистым <размахом itemprop = "http://example.com/color"> черный мех с белые лапы и живот.
В этом примере есть один элемент с типом "http://myvocab.example.org/animals/cat" и следующие недвижимость:
- http://myvocab.example.org/animals/name
- Хедраль
- http://example.com/fn
- Hedral
- http://myvocab.example.org/animals/desc
- Хедрал (Hedral) - американский домашний короткошерстный кот с пушистым черным мехом, белыми лапами и животом.
- http://example.com/color
- черный
- http://example.com/color
- белый
- http://myvocab.example.org/animals/img
- http://example.net/some/ Cathedral.jpeg
5. Кодирование микроданных
5.1 Модель микроданных
Модель микроданных состоит из групп пар имя-значение, известных как элементы.
Каждая группа известна как элемент. Каждый элемент может иметь ноль или более типов элементов, глобальный идентификатор (идентификаторы) и связанные пары имя-значение.Каждое имя в паре имя-значение известно как свойство, и каждое свойство имеет одно или несколько значений. Каждое значение представляет собой строку или группу пар имя-значение. (пункт). Свойства и их значения неупорядочены, и авторы не должны полагаться на сохранение определенного порядка.
5.2 Предметы:
области действия
, тип объекта
и идентификатор объекта
Каждый элемент HTML может иметь itemscope
указан атрибут.Атрибут
является логическим атрибутом. itemscope
Элемент с указанным атрибутом
создает новый элемент , группу пар имя-значение
которые описывают свойства и их значения вещи, представленной этим элементом. itemscope
Элементы с атрибутом
могут иметь itemscope
itemtype
указан атрибут, чтобы дать
типы элементов элемента.
Атрибут
, если он указан, должен иметь значение, которое
представляет собой неупорядоченный набор уникальных токенов, разделенных пробелами, которые
с учетом регистра, каждый из которых является допустимым абсолютным
URL, и все они находятся в одном словаре. Значение атрибута должно
иметь хотя бы один токен. itemtype
типов предметов предмета - это полученные токены
путем разделения значения атрибута itemtype
элемента на пробелы.
Если атрибут
отсутствует или анализирует его
таким образом не находит жетонов, считается, что предмет не имеет
типы предметов. itemtype
Типы элементов определяют идентификатор словаря . Это URL который добавляется к именам свойств, что определяет их как часть их словаря. Значение словарного идентификатора для элемента определяется следующим образом:
- Пусть потенциальных значений будет пустым массивом URL-адресов.
- Пусть токена будет значением атрибута
itemtype
, разделенного пробелами. - Для каждого значения из токенов :
- Если в значении присутствует ЗНАК U + 0023 ("#")
- Добавить подстроку значения с начала к первому НОМЕРНЫЙ ЗНАК U + 0023 ("#") к потенциальных значений
- В противном случае, если в значении есть SOLIDUS U + 002F ("/")
- Добавить подстроку значения от начала к последней SOLIDUS U + 002F ("/") к потенциальных значений
- В противном случае
- Добавить SOLIDUS U + 002F ("/") к значению и добавить полученную строку к потенциальным значениям
- Если есть только одно уникальное значение из потенциальных значений, верните это значение.В противном случае верните первый элемент из возможных значений .
Пользовательские агенты не должны автоматически разыменовывать неизвестно URL-адресов, указанных как типы элементов и названия собственности. Эти URL-адреса являются априори непрозрачными идентификаторами .
Примечание
В спецификации может быть указано, что ее типы элементов может быть разорван, чтобы предоставить пользователю справочную информацию. Авторам словаря рекомендуется предоставлять полезную информацию. по указанному URL, либо в прозе, либо на формальном языке, таком как RDF.
Атрибут
нельзя указывать в элементах.
для которых не указан атрибут itemtype
. itemscope
Элемент называется элементом типа когда либо у него есть тип элемента, либо это значение свойства типизированного элемента. Соответствующие типы для типизированного элемента - это типы предметов, если они есть, в противном случае это соответствующие типы товара для которых это стоимость собственности.
Элементы с атрибутом itemscope
также может быть указан атрибут itemid
,
чтобы дать глобальный идентификатор предмету,
чтобы его можно было связать с другими элементами в Интернете,
или с концепциями за пределами Интернета, такими как номера ISBN для опубликованных книг.
Атрибут
, если он указан, должен иметь значение, которое
действительный URL-адрес, потенциально окруженный пробелами. itemid
Глобальный идентификатор элемента
- значение атрибута
его элемента, если он есть,
разрешается относительно элемента, для которого указан атрибут.Если атрибут itemid
отсутствует или если его не удается разрешить, он
считается, что не имеет глобального идентификатора. itemid
Атрибут
нельзя указывать в элементах.
которые не имеют атрибута itemid
. itemscope
В этом примере показаны микроданные, используемые для описания модельных железнодорожных продуктов. производитель. Идентификатор словаря - https://md.example.com/ . В примере используются пять имен свойств:
- код товара
- Номер, идентифицирующий продукт в каталоге производителя.
- название
- Краткое описание товара.
- масштаб
- Одно из «HO», «1» или «Z» (возможно, с начальным или конечным пробел), обозначающий масштаб продукта.
- цифровой
- Если присутствует, один из «Цифровой», «Дельта» или «Системный» (возможно с начальным или конечным пробелом), указывающее, что изделие имеет цифровой декодер данного типа.
- гусеничный
- Для продуктов, относящихся к треку, один из «K», «M», «C» (потенциально с начальным или конечным пробелом), указывающий тип дорожки для которых предназначен продукт.
Он определяет четыре типа элементов:
- https://md.example.com/loco
- Подвижной состав с двигателем
- https://md.example.com/passengers
- Подвижной состав пассажирский
- https://md.example.com/track
- Гусеницы
- https://md.example.com/lighting
- Оборудование с освещением
Каждому предмету, использующему этот словарь, можно дать один или несколько этих типов, в зависимости от продукта.
Таким образом, локомотив может быть размечен как:
- Имя:
- Танковый локомотив (DB 80)
- Код товара:
- 33041
- Масштаб:
- HO
- Цифровой:
- Дельта
Комплект для переоборудования стрелочного фонаря может быть помечен как:
- Имя:
- Комплект фонаря стрелочного перевода
- Код товара:
- 74470
- Цель:
- Для модернизации 2-х гусениц C явки.
Легковой автомобиль без освещения можно обозначить как:
.- Имя:
- Пассажирский поезд экспресс (DB Am 203)
- Код товара:
- 8710
- Масштаб:
- Z
5.3 Свойства: атрибуты
itemprop
и itemref
Атрибут itemprop
при добавлении к любому элементу HTML.
который является частью элемента, идентифицирует свойство этого элемента.Атрибут должен быть неупорядоченным набором уникальных токенов, разделенных пробелами,
представляющие имена добавляемых свойств с учетом регистра. В
атрибут должен содержать хотя бы один токен.
Каждый токен должен быть либо действительным абсолютным URL-адресом, либо строкой, не содержащей "." (U + 002E) символы и никаких символов ":" (U + 003A).
Спецификации словаря не должны определять имена свойств для микроданных которые содержат "." (U + 002E) символы, ":" (U + 003A) символы, ни пробелы (определены в [ HTML52 ] как U + 0020, U + 0009, U + 000A, U + 000C и U + 000D).
Имена свойств элемента определяются следующим образом:
- Пусть токена будут значениями атрибута
itemprop
, Разделить на пробелы. - Пусть properties будет пустым массивом строк.
- Для каждого значения токена , по порядку:
- Если значение является повторением более раннего значения
- отменить его и обработать следующее значение
- Если значение является абсолютным URL-адресом
- добавить его к свойствам , затем обработать следующее значение
- В противном случае, если элемент является типизированным элементом:
- Добавить значение к словарному идентификатору элемента.Если полученное значение не соответствует никакому значению в свойствах , затем добавьте его к свойствам , и обработайте следующее значение.
- В противном случае
- добавляет значение к свойствам и обрабатывает следующее значение.
- Если свойств не пусто, вернуть свойств .
Внутри элемента свойства неупорядочены по друг друга и авторов не следует полагаться на порядок сохранения разметки.
В следующем примере порядок свойств "a" и "b" не важен, поскольку не гарантируется его сохранение в полученных микроданных:
1
2
тест
эквивалентно:
тест
2
1
Элементы с атрибутом
могут иметь itemscope
itemref
указан атрибут, чтобы предоставить список дополнительных
элементы для обхода, чтобы найти пары имя-значение элемента.
Атрибут
, если он указан, должен иметь значение, которое
представляет собой неупорядоченный набор уникальных токенов, разделенных пробелами, которые
с учетом регистра, состоящий из идентификаторов элементов в одном документе. itemref
Атрибут
нельзя указывать для элементов, которые
не указан атрибут itemref
. itemscope
Предыдущий пример:
1
2
тест
Можно также записать так:
1
тест
2
Когда элемент с атрибутом
добавляет свойство
к нескольким элементам, указанное выше требование в отношении токенов применяется для каждого
пункт индивидуально. itemprop
Для следующего кода:
Автор должен быть уверен, что z - допустимое имя свойства для обоих http://example.com/a и http://example.com/b словари.
5,4
Значения : содержимое
атрибут, специфичные для элемента атрибуты и содержимое элементаАлгоритм для определения значения для пары имя-значение дается путем применения первого подходящего случая в следующем списке:
- Если элемент также имеет атрибут
itemscope
Значение - это элемент, созданный элементом.
- Если элемент имеет содержимое
, атрибут
Значение - это
textContent
атрибутаcontent
элемента.Примечание
HTML допускает только атрибут
содержимого
в мета-элементе- Если элемент - это
audio
,embed
,iframe
,img
,источник
,дорожка
иливидео
элемент Если элемент имеет атрибут
src
, пусть предложенное значение будет результатом разрешения этого атрибутаtextContent
.Если предлагаемое значение является действительным абсолютным URL: значение предлагаемое значение .
иначе Значение - пустая строка.- Если это элемент
, это
, область,
илиссылка
элемент Если элемент имеет атрибут
href
, пусть предложенное значение будет результатом разрешения этого атрибутаtextContent
. Если предлагаемое значение является действительным абсолютным URL: значение предлагаемое значение .
иначе Значение - пустая строка.- Если элемент является объектом
Если элемент имеет атрибут
data
, пусть предложенное значение будет результатом разрешения этого атрибутаtextContent
. Если предлагаемое значение является действительным абсолютным URL: значение предлагаемое значение .
иначе Значение - пустая строка.- Если элемент
данных
илисчетчик
элемент Если элемент имеет
значение атрибута
, значение будетtextContent
этого атрибута.- Если элемент - это время
, элемент
Если элемент имеет атрибут
datetime
, значением будетtextContent
этого атрибута.- В противном случае
Значение -
textContent
элемента.
Элементы свойства URL - это a
, область
, аудио
, вставить
, iframe
, img
, ссылка
, объект
, источник
, дорожка
и видео
элементов.
Если значение свойства, как определено определение, является абсолютным URL-адресом, свойство должно быть указано с помощью Элемент свойства URL.
Примечание
Эти требования не применяются только потому, что значение свойства совпадает с синтаксис для URL. Они применяются только в том случае, если свойство явно определено как принимающее такой стоимость.
Например, книга о первой высадке на Луну,
20 июля 1967 года можно было назвать "миссия: луна".Свойство "title" из словаря, которое определяет заголовок как строку.
не ожидал, что заголовок будет дан в элементе и
, даже если это действительный
URL. С другой стороны, если бы был словарь для
"книги, названия которых выглядят как URL-адреса", свойство "title" которых определено как URL-адрес,
свойство будет ожидать, что заголовок будет дан в элементе a
(или один из других элементов свойства URL) в соответствии с указанным выше требованием.
5.5 Связывание имен с предметами
Чтобы найти свойства элемента , определенные элементом корень , агент пользователя должен выполнить следующие шаги. Эти шаги также используются для отметки Ошибки микроданных.
Пусть результатов , память и ожидающие будут пустые списки элементов.
Добавьте элемент root в память .
Добавьте дочерние элементы root , если есть, в ожидающих .
Если корень имеет атрибут
itemref
itemref
на пробелы. Для каждого результирующего токена ID , если в документе есть элемент с идентификатором ID , затем добавьте первый такой элемент к ожидающим .Цикл : Если ожидающий пуст, перейдите к шагу с меткой конец петля .
Удалите элемент из ожидающих и пусть текущий будет этот элемент.
Если текущий уже находится в памяти , имеется Ошибка микроданных; вернитесь к шагу , петля .
Добавьте текущего к памяти .
Если текущий не имеет
itemscope
Если текущий имеет
itemprop
Вернитесь к шагу с меткой петля .
Конец цикла : отсортируйте результаты в древовидном порядке.
Вернуть результатов .
В документе не должно быть позиций, для которых найти свойства предмета находит любые Ошибка микроданных .
Элемент является элементом микроданных верхнего уровня если его элемент не имеет атрибута
. itemprop
Все атрибуты
в документе itemref
должны быть такими
что нет циклов в графе, сформированном из представления каждого элемента
в Документе
как узел на графике и каждое свойство элемента, чьи
value - это еще один элемент в виде ребра в графе, соединяющий эти два элемента.
Документ не должен содержать атрибут
это не было бы свойством какого-либо предмета
в этом документе должны были быть определены все свойства. itemprop
В этом примере одно заявление о лицензии применяется к двум произведениям, используя
из предметов, представляющих работы: itemref
Фотогалерея Мои фото
<нижний колонтитул>Все изображения лицензированы по MIT лицензия .
Результатом выше является два элемента типа « http://n.whatwg.org/work
»,
один с:
- работа
-
изображений / house.jpeg
- название
- Дом, который я нашел.
- лицензия
-
http://www.opensource.org/licenses/mit-license.php
...и один с:
- работа
-
изображений / mailbox.jpeg
- название
- Почтовый ящик.
- лицензия
-
http://www.opensource.org/licenses/mit-license.php
6. Преобразование микроданных в другие форматы
6,1 JSON
В этом разделе представлена устаревшая, но соответствующая функция.
Информация микроданных может быть легко выражена в форме JSON, включая формат JSON-LD для RDF.Эта спецификация не стремится ограничить такие преобразования, но кроме определения минимального преобразования в RDFa. который может использоваться для генерации JSON-LD, поскольку они оба формально являются синтаксисами для выражения RDF, определяет «ссылочный формат». В настоящее время этот формат не используется, но он представлен здесь для исторической информации.
Учитывая список узлов узлов в документе
, пользовательский агент должен
запустите следующий алгоритм , чтобы извлечь микроданные , выраженные как приложение / микроданные + json
:
Пусть result будет пустым объектом.
Пусть элемента будет пустым массивом.
Для каждого узла в узлах проверьте, является ли элемент элемент микроданных верхнего уровня, и, если он есть, получить объект для этого элемента и добавить его к элементам .
Добавьте запись к результату под названием «
товаров
», чья value - это массив элементов .Вернуть результат сериализации result в JSON в кратчайшие сроки возможный способ (что означает отсутствие пробелов между токенами, отсутствие ненужных нулевых цифр в числах и только использование escape-символов Unicode в строках для символов, у которых нет специального escape-символа последовательность), и с использованием строчной буквы "
e
", когда это необходимо, в представление любых чисел.[ JSON ]
Примечание
Этот алгоритм возвращает объект с единственным свойством, которое является массивом, вместо этого просто вернуть массив, чтобы можно было расширить алгоритм в будущем, если нужно.
Когда пользовательский агент до получает объект для элемента элемент , потенциально вместе со списком элементов памяти он должен запускать следующие подшагов:
Пусть result будет пустым объектом.
Если алгоритму не было передано memory , пусть memory будет пустым списком.
Добавить элемент к памяти .
Если элемент имеет какие-либо типы элементов, добавьте запись к результату называется "
тип
", значение которого представляет собой массив, в котором перечислены типы позиций позиции , в том порядке, в котором они были указаны наitemtype
Если элемент имеет глобальный идентификатор, добавьте запись в результат называется "
id
", значение которого является глобальным идентификатор товар .Пусть свойств будет пустым объектом.
Для каждого элемента элемент , который имеет одно или несколько имен свойств и является одним из свойств предмета элемент , в том порядке, в котором эти элементы задаются алгоритмом, который возвращает свойства элемента, выполните следующие подшаги:
Пусть значение будет значение свойства элемента .
Если значение является элементом, то: Если значение находится в памяти , тогда пусть значение будет строка «
ОШИБКА
». В противном случае получите объект за значение , передача копии памяти , а затем замена значения с объектом, возвращенным на этих шагах.Для каждого имени имя в элементе 's имена свойств, выполните следующие подшаги:
Если в свойствах нет записи с именем имя , затем добавьте запись с именем имя к свойствам , чьи value - пустой массив.
Добавить значение к записи с именем name в свойствах .
Добавьте запись к результату под названием «
свойств
», чья value - это объект , свойства .Вернуть результат .
Например, возьмите эту разметку:
Мой блог <заголовок> Отчет о проделанной работе
В целом у него хорошие уроки плавания. Самым большим было то, что у него были проблемы засунул голову, но мы ее опустили.
<раздел>Комментарии
<нижний колонтитул> Автор: Грег
Ха!
<нижний колонтитул> Автор: Шарлотта
Когда вы говорите "мы разобрались" ...
Он будет преобразован в следующий JSON с помощью описанного выше алгоритма (предполагая, что страница
URL был http://blog.example.com/progress-report
):
{ "Предметы": [ { "тип": ["https: // схема.org / BlogPosting "], "характеристики": { "заголовок": ["Отчет о проделанной работе"], "datePublished": ["2013-08-29"], "url": ["http://blog.example.com/progress-report?comments=0"], "комментарий": [ { "тип": ["https://schema.org/Comment"], "характеристики": { "url": ["http://blog.example.com/progress-report#c1"], "создатель": [ { "тип": ["https://schema.org/Person"], "характеристики": { "имя": ["Грег"] } } ], "dateCreated": ["2013-08-29"] } }, { "тип": ["https: // схема.org / Comment "], "характеристики": { "url": ["http://blog.example.com/progress-report#c2"], "создатель": [ { "тип": ["https://schema.org/Person"], "характеристики": { "имя": ["Шарлотта"] } } ], "dateCreated": ["2013-08-29"] } } ] } } ] }
6,2 RDFa
Почти все набранные элементы можно легко преобразовать в RDFa.Это полезно, например, для поддержки лучшей интернационализации или для включения разметки в результирующие данные, за пределами возможностей микроданных. Эта спецификация определяет минимальное преобразование RDFa в диалект RDFa-Lite. который использует подмножество функциональности RDFa. Более совершенное преобразование, которое использует синергию от использования микроданных в HTML. описан в микроданных в RDF. [ microdata-rdf ]
Чтобы преобразовать элемент микроданных в RDFa , результат должен включать тройки, полученные по следующему алгоритму:
- Для каждого элемента, имеющего атрибут
itemscope
:- Заменить атрибут
itemscope
на атрибутvocab
, значение которого является словарным идентификатором элемента. - Заменить любой атрибут
itemtype
на атрибутtypeof
, значение которого взято из значенийitemtype
где каждый тип сделан относительно словарного идентификатора, обеспечение того, чтобы элемент имел атрибутtypeof
, по крайней мере, с пустым значением. - Замените любой атрибут
itemid
наресурс
атрибут, имеющий то же значение. - В противном случае убедитесь, что элемент имеет тип
- Заменить атрибут
- Для каждого объекта
элемент
, имеющий какitemprop
иdata
attribute, изменитьdata
атрибут дляресурс
атрибут с таким же значением - Измените каждый атрибут
itemprop
на атрибутсвойства
с тем же значением - Для каждого элемента, имеющего атрибут
itemref
:- Установить словарь элемента на первое значение
Dictionary
атрибут, взятый из элемента и его предки. - Для каждого значения ссылка это результат разделения значения на пробелы, выполните следующие шаги:
- Добавьте элемент в качестве непосредственного родителя элемента с идентификатором
vocab
, значение которого равно item vocab , и с атрибутомtypeof
с атрибутомrel = "rdfa: Pattern"
.Примечание
Выбор элемента оставлен на усмотрение автора, чтобы обеспечить достаточную гибкость чтобы избежать нежелательных изменений в рендеринге контента.
- Добавить ссылку
, дочерний элемент
к элементу, представляющему элемент, с атрибутомrel = "rdfa: copy"
и атрибутомhref
значение которого представляет собой ЧИСЛОВЫЙ ЗНАК U + 0023, за которым следует ссылка
А затем удалите атрибут itemref.
- Добавьте элемент в качестве непосредственного родителя элемента с идентификатором
- Установить словарь элемента на первое значение
Примечание
Существует значительный объем оптимизации этого алгоритма, который может привести к избыточному словарю
декларации, в частности.
Данные примера для модели локомотива, приведенные выше, будут преобразованы в следующий RDFa:
- Имя:
- Танковый локомотив (DB 80)
- Код товара:
- 33041
- Масштаб:
- HO
- Цифровой:
- Дельта
Пример использования itemref
показывает возможности для оптимизации:
<рисунок vocab = "https: // schema.org / "typeof =" CreativeWork ">Дом, который я нашел. <рисунок vocab = "https://schema.org/" typeof = "CreativeWork">Почтовый ящик. <нижний колонтитул>Все изображения под лицензией лицензия MIT .
Его можно переписать как:
<нижний колонтитул>Все изображения под лицензией лицензия MIT .
7. Изменения в HTML
7.1 Новые атрибуты
Эта спецификация добавляет в HTML следующие глобальные атрибуты и связанные ограничения достоверности:
-
поз. Сфера действия
- Это логический атрибут.Когда присутствует на элементе, он идентифицирует этот элемент как контейнер для элемента
-
тип позиции
- Это список абсолютных URL-адресов, которые идентифицируют элемент в определенном словаре.
- Атрибут
itemtype
нельзя указывать для элементов, у которых нет атрибутаitemscope
. Примечание
Этот атрибут выполняет функцию, аналогичную комбинации
словаря
итипа
атрибутов в [ rdfa-core ].-
itemprop
- Если присутствует в элементе, он указывает, что элемент предоставляет значение свойства. элемента, в котором он появляется, а значение атрибута определяет имя свойства.
Примечание
Этот атрибут эквивалентен атрибуту
свойства
в [ rdfa-core ].-
идентификатор товара
- Это абсолютный URL-адрес, который предоставляет глобальный идентификатор для элемента.
- Атрибут
itemid
нельзя указывать для элементов, не имеющих указан атрибутitemscope
. Примечание
Это примерно эквивалентно объявлению предмета
сова: то же, что и
значение атрибута. [ сова, исх. ]-
itemref
- Это список идентификаторов элементов, разделенных пробелами. которые не являются потомками элемента, на котором он появляется.Он идентифицирует каждый элемент, идентификатор которого включает как определение свойства элемента, на котором он присутствует.
- Атрибут
itemref
нельзя указывать для элементов, у которых нет атрибутаitemscope
.
7.2 Модели содержимого
Этот раздел изменяет модели содержимого, определенные HTML, следующим образом:
Атрибут содержимого
, переопределенный данной спецификацией как глобальный атрибут
которые могут присутствовать на этом элементе.
Это согласуется с [ HTML-RDFA ], в котором атрибут используется для той же цели.
Если атрибут
присутствует в ссылке itemprop
или мета-элементе
,
этот элемент является содержимым потока и содержанием фраз,
и может использоваться там, где ожидается фразовое содержание.
Если ссылка
элемент имеет
атрибут itemprop
rel
можно опустить.
Если мета-элемент
имеет элемент
атрибут itemprop
name
, http-Equiv
и charset
атрибуты должны быть опущены,
и должен присутствовать атрибут содержимого
.
Если указан атрибут
на itemprop
элемент
или области
, тогда атрибут href
также должен быть
указано.
Если атрибут
указан в аудио itemprop
, embed
, iframe
, img
, источник
, дорожка
или видео
элемент, то также должен быть указан атрибут src
.
Если указан атрибут
на элементе itemprop
объекта
, то атрибут data
также должен быть
указано.
8. Микроданные и RDF
Этот раздел не является нормативным
Microdata имеет ограниченную выразительность. Есть только два типа данных - текстовые строки, URL-адреса и микроданные. не имеет механизма для описания дополнительных типов данных, таких как числа или фрагменты разметки, совместимым способом или включает такую информацию, как язык, в отличие от форматов RDF, включая RDFa.Для поддержки сохранения структуры разметки, информации об интернационализации или для большей выразительности, авторам следует рассмотреть возможность использования [ JSON-LD ] или [ rdfa-core ] вместо или вместе с микроданными.
Информация, выраженная в виде микроданных, может быть преобразована в RDFa, как описано в Раздел 6. [ rdfa-core ], Более богатый процесс преобразования микроданных в RDF, расширяющий минимальный, требуемый этой спецификацией, описан в микроданных в RDF.[ микроданные-rdf ]
9. Доступность и микроданные
Этот раздел не является нормативным
Микроданные могут использоваться для предоставления машинно-анализируемой информации о контенте, который обрабатывается инструментами для улучшения доступности.
При редактировании содержимого, содержащего микроданные, авторы должны учитывать возможность этого. Инструменты разработки и управления контентом должны реализовывать Руководство по доступности инструментов Authoring Tool, и в этом контексте обратите внимание на Руководство B1.1.2 - Обеспечение сохранности информации о доступности, если применимо, привлечение внимания к тому факту, что изменения в содержании могут означать, что закодированные метаданные неточны. [ ATAG20 ]
Авторы должны знать, что большая часть информации о доступности игнорируется при извлечении микроданных,
включая такие атрибуты, как alt
и информацию ARIA. Авторам следует подумать о том, следует ли
явно закодировать информацию о доступности или использовать более выразительный подход, такой как RDFa.[ rdfa-core ]
10. Интернационализация и локализация
Этот раздел не является нормативным
Microdata не сохраняет информацию, связанную с интернационализацией, в исходном документе, кроме случаев, когда они специально закодированы как микроданные. В этом случае важно обращать внимание при редактировании исходного документа, так как в случае доступности, чтобы избежать ошибок, которые отражаются только в микроданных. Этот подход также имеет тот недостаток, что представление такой информации не основано на установленном стандарте, поэтому это может быть непонятно обработчикам информации и пользователям информации.
Машиночитаемые данные могут быть представлены пользователям, например, поисковыми системами. Информация об интернационализации часто важно для этого варианта использования. Авторы могут предпочесть преобразовать свои данные в RDFa. чтобы воспользоваться его лучшей поддержкой интернационализации.
Составить словарный запас сложно. Разные языки и культуры по-разному представляют неоднозначность взглядов: два термина с разными значениями в одной ситуации могут быть наиболее естественно переведены одним термином, имеющим оба значения, или один термин может иметь два естественных перевода.При разработке под локализацию важно предусмотреть достаточная контекстная информация о терминах в словаре для обеспечения точного перевода.
11. Вопросы конфиденциальности
Этот раздел не является нормативным
Microdata не вводит новых механизмов для передачи конфиденциальной информации. Однако он более четко определяет информацию, таким образом, чтобы облегчить поиск данных и объединение их с данными из других источников.
Авторы и обработчики должны позаботиться о том, чтобы их использование микроданных соответствовало политике конфиденциальности. и любые применимые правила.
12. Вопросы безопасности
Этот раздел не является нормативным
Микроданные обычно не взаимодействуют с браузерами, поскольку представляют собой статический формат документа, в котором отсутствует какой-либо интерфейс DOM.
Microdata делает информацию машиночитаемой, но не включает автоматически информацию о происхождении кодируемых им утверждений.
Обработчики микроданных должны учитывать надежность источников, которые они используют, включая возможность того, что данные больше не точны, и возможность того, что данные, собранные через небезопасное соединение, были изменены атакой «человек посередине».
13. Соображения IANA
приложение / микроданные + json
Эта регистрация предназначена для рассмотрения сообществом и будет отправлена в IESG для рассмотрения, утверждения и регистрации в IANA.
- Название типа:
- приложение
- Имя подтипа:
- микроданных + json
- Обязательные параметры:
- То же, что и для приложения
/ json
[ JSON ] - Дополнительные параметры:
- То же, что и для приложения
/ json
[ JSON ] - Рекомендации по кодированию:
- 8 бит (всегда UTF-8)
- Соображения безопасности:
- То же, что и для приложения
/ json
[ JSON ] - Вопросы совместимости:
- То же, что и для приложения
/ json
[ JSON ] - Опубликованная спецификация:
- Маркировка ресурса
application / microdata + json
type утверждает, что ресурс - это текст JSON, состоящий из объекта с одним запись под названием «элементов
», состоящая из массива записей, каждая из которых состоит из объекта с записью называется "id
", значением которого является строка, запись под названием "тип
", значение которой другое строка и запись с названием «properties
» чье значение является объектом, каждая запись которого имеет значение состоящий из массива объектов или строк, объекты имеют ту же форму, что и объекты в вышеупомянутой записи «пунктов
».Таким образом, соответствующие спецификации являются спецификацией JSON и данной спецификацией. [ JSON ] - Приложения, использующие этот тип носителя:
Приложения, передающие данные, предназначенные для использования с микроданными, особенно в контекст перетаскивания, являются основным классом приложения для этого типа.
- Дополнительная информация:
- Магическое число (а):
- То же, что и для приложения
/ json
[ JSON ] - Расширение файла:
- То же, что и для приложения
/ json
[ JSON ] - Код (ы) типа файла для Macintosh:
- То же, что и для приложения
/ json
[ JSON ]
- Для дополнительной информации:
- https: // github.ru / w3c / microdata /
- Предполагаемое использование:
- Обычный
- Ограничения по использованию:
- Никаких ограничений нет.
- Автор:
- W3C
- Контроллер изменений:
- W3C
Идентификаторы фрагментов, используемые с application / microdata + json
ресурсов одинаковы
семантика, как при использовании с application / json
(а именно,
на момент написания вообще никакой семантики).[ JSON ]
14. Изменения
Точная история изменений текста доступна в журнале коммитов Github. Следующая информация предоставляется в качестве обзора существенных изменений, внесенных в спецификацию между каждой публикацией.
Изменения, внесенные в текущий черновик и третий рабочий проект:
- Укажите, что свойства и их значения неупорядочены.
- Удалите преобразование микроданных в JSON-LD.
- Пометить преобразование микроданных в JSON как устаревшую, но соответствующую функцию.
Изменения, внесенные между третьим рабочим проектом и второй рабочий проект:
- Добавьте раздел, описывающий, как преобразовать микроданные в RDFa.
- Добавьте раздел, описывающий, как преобразовать микроданные в JSON-LD (теперь удален).
-
itemid
может быть указан для элемента с атрибутомitemscope
, а не только для типизированного элемента
Изменения, внесенные между вторым рабочим проектом и первый публичный рабочий проект:
- Разрешите
itemid
в целом, вместо того, чтобы ожидать, что словари объяснят, что это означает. - Добавьте механизм для определения URL-адреса, который является идентификатором словаря, и используйте его как начало имени свойства для любого типизированного элемента.
- Удалите раздел «Микроданные и другие пространства имен», который подразумевал, что микроданные не будут работать в других пространствах имен. Потому что это так.
- Разрешить атрибут
содержимого
для любого элемента, в котором присутствует атрибутitemprop
, чтобы предоставить читаемое значение для свойства. - Настроить алгоритм определения
значение пары имя-значение, чтобы соответствовать реализации:
-
data
,meter
иtime
элементовtextContent
используется если у них нет атрибута, предоставляющего значение. - Если присутствует атрибут
содержимого
, он предоставляет стоимость.
-
- Добавлены ненормативные разделы для доступности и микроданных, Интернационализация и локализация, Конфиденциальность, и соображения безопасности.
- Удалите перетаскивание, так как это не реализовано в текущих браузерах.
Изменения, внесенные между Первым общедоступным рабочим проектом и 23 октября 2013 г. W3C Примечание:
- Удалить DOM API.Этот API был удален из браузеров, в которых он реализован.
- Удалить неиспользуемые ссылки
15. Благодарности
Первоначальная спецификация микроданных была разработана Яном Хиксоном. Без него эта спецификация не существовала бы. Популярность в значительной степени была вызвана его использованием в словаре schema.org.
Нынешние редакторы особенно благодарны Греггу Келлогу и Ивану Герману за бесценные помощь, включая предоставление опыта внедрения и тестирования во время разработки данной спецификации.
Кроме того, выражаем благодарность следующим людям, чей прямой вклад помог улучшить эту работу:
Эддисон Филлипс, Брюс Лоусон, Кристин Раннегар, Джени Теннисон, Йенс Оливер Мейерт, Леони Уотсон, Ману Спорни, Маркос Касерес, Маркус Ланталер, Ник Доти, Ник Левинсон, Филипп Ле Эгарет, Ральф Свик, Ричард Исида, Роб Сандерсон, Робин Берджон, Шейн Маккаррон, Таб Аткинс, Тэвис Такер, Тоби Лэнджел, "Унор", Сяоцянь Ву, Ив Лафон.
Редакция приносит свои извинения людям, чьи имена незаслуженно отсутствуют в этом списке.
A. Ссылки
A.1 Нормативные ссылки
- [DOM41]
- W3C DOM 4.1 . Юншэн Чжу. W3C. 1 февраля 2018 г. Рабочий проект W3C. URL: https://www.w3.org/TR/dom41/
- [HTML52]
- HTML 5.2 . Стив Фолкнер; Аррон Эйхольц; Трэвис Лейтхед; Алекс Данило; Сангван Мун. W3C. 14 декабря 2017 г. Рекомендация W3C. URL: https://www.w3.org/TR/html52/
- [RFC2119]
- Ключевые слова для использования в RFC для обозначения уровней требований .С. Брэднер. IETF. Март 1997 г. Наилучшая текущая практика. URL: https://tools.ietf.org/html/rfc2119
- [RFC3986]
- Универсальный идентификатор ресурса (URI): общий синтаксис . Т. Бернерс-Ли; Р. Филдинг; Л. Масинтер. IETF. Январь 2005 г. Интернет-Стандарт. URL: https://tools.ietf.org/html/rfc3986
A.2 Информационные ссылки
- [ATAG20]
- Authoring Tool Accessibility Guidelines (ATAG) 2.0 . Ян Ричардс; Жанна Ф. Спеллман; Ютта Тревиранус.W3C. 24 сентября 2015 г. Рекомендация W3C. URL: https://www.w3.org/TR/ATAG20/
- [html-extensions]
- Спецификации расширений HTML . Леони Уотсон. W3C. 3 мая 2017. Черновик редактора W3C. URL: https://w3c.github.io/html-extensions/
- [HTML-RDFA]
- HTML + RDFa 1.1 - второе издание . Ману Спорни. W3C. 17 марта 2015 г. Рекомендация W3C. URL: https://www.w3.org/TR/html-rdfa/
- [JSON]
- Тип носителя application / json для нотации объектов JavaScript (JSON) .Д. Крокфорд. IETF. Июль 2006. Информационное. URL: https://tools.ietf.org/html/rfc4627
- [JSON-LD]
- JSON-LD 1.0 . Ману Спорни; Грегг Келлогг; Маркус Ланталер. W3C. 16 января 2014 г. Рекомендация W3C. URL: https://www.w3.org/TR/json-ld/
- [microdata-rdf]
- Микроданные в RDF - второе издание . Грегг Келлогг. W3C. 16 декабря 2014 г. Примечание W3C. URL: https://www.w3.org/TR/microdata-rdf/
- [owl-ref]
- Справочник по языку веб-онтологий OWL .Майк Дин; Гус Шрайбер. W3C. 10 февраля 2004 г. Рекомендация W3C. URL: https://www.w3.org/TR/owl-ref/
- [rdf-primer]
- RDF Primer . Фрэнк Манола; Эрик Миллер. W3C. 10 февраля 2004 г. Рекомендация W3C. URL: https://www.w3.org/TR/rdf-primer/
- [rdfa-core]
- RDFa Core 1.1 - третье издание . Бен Адида; Марк Бирбек; Шейн Маккаррон; Иван Герман и др. W3C. 17 марта 2015 г. Рекомендация W3C. URL: https://www.w3.org/TR/rdfa-core/
- [URL]
- URL Стандартный .Анне ван Кестерен. WHATWG. Уровень жизни. URL: https://url.spec.whatwg.org/
Schema.org Microdata - DeepCrawl
Теперь, когда мы рассмотрели хлеб с маслом метаданных в виде заголовков страниц и метаописаний, давайте посмотрим, как вы можете добавлять метаданные в содержание веб-страницы с микроданными.
Что такое микроданные?
Микроданные - это форма структурированных данных, которые используются для вставки метаданных в существующее содержимое веб-страницы.Вкратце, микроданные позволяют вам предоставлять метки для отдельных элементов контента, используя пары «имя: значение». Внедрение микроданных на веб-страницы помогает поисковым системам понимать веб-контент и предоставлять более богатые результаты поиска.
Что такое schema.org?
Schema.org, аналогично sitemaps.org, представляет собой проект, который предоставляет согласованные определения и структуры для реализации структурированных данных, которые поддерживаются основными поисковыми системами.
Schema.org имеет обширный словарь, который включает определенные теги микроданных для большинства форм контента.В настоящее время Google поддерживает микроданные для семи различных типов контента, включая статьи, информацию о местных компаниях, музыку, рецепты, телешоу, фильмы и видео.
Google также указал, что они поддерживают следующие типы данных: хлебные крошки, окно поиска дополнительных ссылок
, корпоративная контактная информация, логотипы, ссылки в социальных сетях, карусели, книги, курсы, наборы данных, события, проверка фактов, объявления о вакансиях, платный контент, подкасты. , товары и обзоры.
Каковы преимущества микроданных?
Основное преимущество микроданных заключается в том, что они позволяют поисковым системам индексировать теги микроданных и потенциально использовать эти данные для улучшения своих списков результатов поиска, что может способствовать повышению рейтинга кликов при поиске.
В приведенном ниже примере TravelSupermarket указал отзывы, используя разметку звездочек, которую Google использовал для улучшения фрагмента результатов поиска.
Расширенные списки поиска, подобные приведенному выше, занимают больше места, выделяются из толпы и указывают на то, что они могут быть более полезными для искателя.
Стандартный результат поиска Google содержит заголовок, URL и описание страницы.
Однако микроданные поддерживают представление расширенных фрагментов в результатах поиска, которые могут включать дополнительную информацию.В приведенном ниже примере BBC Good Food показана страница рецепта с элементами стандартного результата, а также рейтинг в звездочках, сколько времени требуется на приготовление рецепта, сколько калорий в нем содержится и изображение. Эта дополнительная информация в основном получена из обнаруженной разметки микроданных.
Результаты поиска с расширенными фрагментами показали, что они увеличивают рейтинг кликов и могут привести к общему лучшему ранжированию в поиске. Эти преимущества особенно актуальны для веб-сайтов, которые находятся на рынках, где конкуренция еще не внедрила разметку структурированных данных.
Особенности структурированных данных
Несмотря на то, что преимущества расширенного описания очевидны, реализация структурированных данных на сайте не дает гарантии получения расширенного описания в результатах поиска. Существует ряд распространенных причин, по которым на страницах сайта могут не отображаться расширенные описания:
Раньше веб-мастера предлагали Google показывать 5-звездочные отзывы в своих расширенных фрагментах, используя «фальшивые» данные отзывов, невидимые для пользователей.Такое поведение может привести к ручным действиям со стороны Google в отношении структурированной разметки.
Тестирование структурированных данных
Рекомендуется проверить правильность структурированных данных и убедиться, что теги не пропущены и не содержат значений недопустимого формата, чтобы страницы с наибольшей вероятностью отображали расширенный фрагмент. Содержимое страницы и структурированная разметка можно скопировать в инструмент проверки структурированных данных для оценки перед публикацией на странице, а после публикации вы можете снова проверить его в Search Console или повторно использовать инструмент тестирования.
Различные форматы разметки
Структурированная разметкаSchema.org может быть реализована с использованием микроданных, JSON-LD (нотация объектов JavaScript для связанных данных) или RDFa (структура описания ресурсов в атрибутах).
Какой формат разметки мне использовать?
JSON-LD
JSON-LD - рекомендуемый формат для реализации разметки. Google поддерживает JSON-LD для всех функций поиска на основе разметки. Мы рекомендуем по возможности использовать JSON-LD, поскольку, по словам Google, структурированные данные проще всего представить таким образом.
Вот пример фрагмента JSON-LD:
JSON-LD может быть сложно реализовать, если разметка добавляется вручную.Однако Google часто может считывать данные JSON-LD, когда они динамически вводятся в содержимое страницы, например с помощью кода JavaScript или встроенных виджетов в вашу систему управления контентом.
Еще одним преимуществом JSON-LD является то, что он может быть предоставлен в виде блока кода, поскольку он отделен от уровня представления, в отличие от необходимости обертывать теги схемы вокруг элементов в исходном коде.
Микроданные
Microdata использует синтаксис встроенной разметки, который включает добавление дополнительных атрибутов к существующим элементам HTML.Microdata предлагает более простую ручную реализацию разметки по сравнению с JSON-LD, поскольку тегирование несколько проще.
Вот пример фрагмента микроданных:
Супер книга
Очень интересно. Очень впечатляет.Рейтинг книги:
88 span > из
100 с
20 оценок
RDF-а
RDF-a - это расширение HTML5, которое обычно используется в разделах верхнего и нижнего колонтитулов страниц сайта с использованием встроенного синтаксиса разметки.
Вот пример фрагмента RDF-a:
Рейтинг книги:
88 из
100 с
20 span> рейтинги