Schema.org - JSON-LD - Đặt ở đâu?


94

Tôi đang tìm cách sử dụng JSON-LD cho giản đồ trên một trang web. (Schema có nghĩa là dữ liệu schema.org.) Tôi biết cách ghi dữ liệu nhưng câu hỏi của tôi là có vị trí ưu tiên trong mã của tôi để chèn dữ liệu này không? Nói cách khác, nên JSON-LD luôn luôn được trong head, bodyvv?

Câu trả lời:


67

Từ quan điểm của Schema.org, JSON-LD và RDF có thể được trích xuất, điều đó không thành vấn đề. Dữ liệu giống nhau, bất kể nó được trích xuất từ ​​đâu trong tài liệu.

Từ quan điểm của HTML5:

Nếu đó là dữ liệu về trang của bạn (hoặc những gì trang này là về), bạn có thể đặt các scriptphần tử trong head, như các headyếu tố

[…] Đại diện cho một bộ sưu tập siêu dữ liệu cho Tài liệu

Nhưng tất nhiên sẽ không sai nếu sử dụng bodycho điều này thay thế. Chỉ là bạn không nên sử dụng headdữ liệu không phải về trang của bạn hoặc những gì nó đại diện.


90

Dữ liệu có thể được đặt ở bất cứ đâu. Từ tài liệu của Google :

Dữ liệu, nằm trong các thẻ <script type="application/ld+json">... </script>như được hiển thị trong các ví dụ dưới đây, có thể được đặt trong vùng <HEAD>hoặc <BODY>vùng của trang hiển thị sự kiện đó.

Bạn cũng có thể sử dụng dữ liệu được tìm nạp động bằng AJAX :

Đánh dấu JSON-LD được chèn bởi Javascript chạy khi tải trang ban đầu có thể được nhận dạng.

Cập nhật (như Antony đã chỉ ra trong các bình luận)

Các tài liệu mới nhất cho biết:

[JSON-LD là] ký hiệu JavaScript được nhúng trong thẻ trong phần đầu hoặc phần nội dung trang ... Google có thể đọc dữ liệu JSON-LD khi dữ liệu này được đưa động vào nội dung của trang, chẳng hạn như mã JavaScript hoặc các tiện ích con được nhúng trong nội dung của bạn hệ thống quản lý.


5
URL mới là Develop.google.com/search/docs/guides/intro-structured-data . Có một bảng 2/3 đường xuống, với một "mô tả và vị trí" cột
Antony

-4

nếu bạn chọn chèn vào <body>, bạn phải làm như thế này:

<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>

dưới đây là mã tập lệnh để chèn dữ liệu có cấu trúc của bạn vào <head>thẻ

<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>

kiểm tra tài liệu tại hướng dẫn chung về dữ liệu có cấu trúc


Bạn có thể sao lưu câu trả lời của mình bằng một số nguồn hoặc thông tin khác không? Các câu trả lời khác nói điều gì đó khác và tôi không thể tìm thấy bất kỳ điều gì trong liên kết bạn đã cung cấp.
Sebi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.