Schema.org - JSON-LD - где разместить?
Я ищу использовать JSON-LD для схемы на веб-сайте. (Схема означает данные schema.org.) Я знаю, как записать данные, но у меня вопрос: есть ли в моем коде предпочтительное место для вставки этих данных? Другими словами, должен ли JSON-LD всегда быть в head
, body
, так далее.?
2 ответа
С точки зрения Schema.org, JSON-LD и, возможно, извлеченного RDF, это не должно иметь значения. Данные одинаковы, независимо от того, где в документе они были извлечены.
С точки зрения HTML5:
Если это данные о вашей странице (или о чем эта страница), вы можете разместить script
элемент в head
как head
элемент
[…] Представляет коллекцию метаданных для Документа
Но, конечно, было бы неправильно использовать body
вместо этого. Просто ты не должен использовать head
для данных, которые не о вашей странице или что она представляет.
Данные могут быть размещены где угодно. Из документации Google:
Данные, вложенные в
<script type="application/ld+json">
...</script>
теги, как показано в примерах ниже, могут быть размещены либо в<HEAD>
или же<BODY>
регион страницы, где отображается это событие.
Вы также можете использовать данные, динамически выбираемые с помощью AJAX:
Разметка JSON-LD, вставленная Javascript, которая запускается при начальной загрузке страницы, может быть распознана.
Обновление (как указал Antony в комментариях)
Последняя документация гласит:
[JSON-LD - это] нотация JavaScript, встроенная в тег в заголовке или теле страницы... Google может читать данные JSON-LD, когда они динамически внедряются в содержимое страницы, например, с помощью кода JavaScript или встроенных виджетов в вашем контенте. система управления.
Если вы решите вставить в <body>
, вы должны сделать это так:
<p class="companyName" vocab="http://schema.org/" resource="#manu" typeof="Organization">
<span property="name">ShopTech Media</span>
<img property="logo" src="https://yoursite.com/logo.png" />
<a property="url" href="http://www.yoursite.com">Home page</a>
</p>
<p typeof="contactPoint">
<span property="contactType">Customer Service:</span>
<span property="telephone">+45-xxxxxxx</span>
</p>
ниже приведен код скрипта для вставки структурированных данных в <head>
тег
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"url": "http://www.shoptech.media",
"logo": "https://shoptech.media/wp-content/uploads/2019/08/cropped-logo-sm.png",
"contactPoint": [{
"@type": "ContactPoint",
"telephone": "+45-65711114",
"contactType": "customer service"
}]
}
</script>
проверить документацию в общих руководящих принципах структурированных данных