Schema.org - JSON-LD - Де розмістити?


94

Я хочу використовувати JSON-LD для схеми на веб-сайті. (Схема означає дані schema.org.) Я знаю, як писати дані, але моє запитання - чи є в моєму коді бажане місце для вставки цих даних? Іншими словами, якщо JSON-LD завжди бути в head, bodyі т.д.?

Відповіді:


67

З точки зору Schema.org, JSON-LD та можливо видобутого RDF, це не повинно мати значення. Дані однакові, незалежно від того, звідки в документі вони отримані.

З точки зору HTML5:

Якщо це дані про вашу сторінку (або про що йдеться на цій сторінці), ви можете помістити scriptелемент у head, як headелемент

[…] Представляє колекцію метаданих Документу

Але, звичайно, не було б неправильно використовувати bodyдля цього натомість. Просто ви не повинні використовувати headдані, які стосуються не вашої сторінки або того, що вона представляє.


90

Дані можна розміщувати де завгодно. З документації Google :

Дані, укладені в межах <script type="application/ld+json">... </script>теги , як показано в наведених нижче прикладах, можуть бути розміщені або в <HEAD>або <BODY>область сторінки , яка показує , що подія.

Ви також можете використовувати дані, що динамічно отримуються за допомогою AJAX :

Розпізнавання розмітки JSON-LD, вставленої Javascript, яка працює при початковому завантаженні сторінки, можна розпізнати.

Оновлення (як зазначив Антоній у коментарях)

В останній документації сказано:

[JSON-LD - це] Нотація JavaScript, вбудована в тег в голові чи тілі сторінки ... Google може читати дані JSON-LD, коли вони динамічно вводяться у вміст сторінки, наприклад, за допомогою коду JavaScript або вбудованих віджетів у ваш вміст система управління.


5
Нова URL-адреса - developers.google.com/search/docs/guides/intro-structured-data . Є таблиця 2/3 внизу, зі стовпчиком "Опис та розміщення"
Ентоні

-4

якщо ви вирішите вставити в <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>

перевірити документацію за загальними рекомендаціями щодо структурованих даних


Чи можете ви підкріпити свою відповідь деякими джерелами чи додатковою інформацією? Інші відповіді говорять про щось інше, і я не можу знайти нічого у наведеному вами посиланні.
Себі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.