Hiểu cách hoạt động của dữ liệu có cấu trúc

Google Tìm kiếm phải thực hiện nhiều thao tác để hiểu được nội dung của một trang. Bạn có thể giúp chúng tôi bằng cách cung cấp gợi ý rõ ràng về ý nghĩa của trang thông qua dữ liệu có cấu trúc trên trang. Dữ liệu có cấu trúc là một định dạng chuẩn để cung cấp thông tin về một trang và phân loại nội dung trang. Ví dụ: trên một trang về công thức nấu ăn sẽ có các loại dữ liệu về nguyên liệu, thời gian nấu và nhiệt độ, lượng calo, v.v.

Google sử dụng dữ liệu có cấu trúc tìm thấy trên web để hiểu nội dung của trang cũng như thu thập thông tin về web và thế giới nói chung. Ví dụ: đây là đoạn dữ liệu có cấu trúc JSON-LD có thể xuất hiện trên trang liên hệ của tập đoàn Unlimited Ball Bearings, trong đó mô tả thông tin liên hệ của họ:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "url": "http://www.example.com",
  "name": "Unlimited Ball Bearings Corp.",
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+1-401-555-1212",
    "contactType": "Customer service"
  }
}
</script>

Google Tìm kiếm cũng sử dụng dữ liệu có cấu trúc để kích hoạt các tính năng và tính năng nâng cao trong kết quả tìm kiếm. Ví dụ: một trang về công thức nấu ăn có dữ liệu có cấu trúc hợp lệ sẽ đủ điều kiện xuất hiện trong kết quả tìm kiếm dạng đồ họa, như minh họa bên dưới:

Tính năng kết quả tìm kiếm Dữ liệu có cấu trúc tương đương (đã cắt ngắn)
Kết quả nhiều định dạng về công thức làm bánh táo 


 <html>
<head>
<title>Grandma's Holiday Apple Pie</title>
<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "Recipe",
  "name": "Grandma's Holiday Apple Pie",
  "author": "Elaine Smith",
  "image": "http://images.edge-generalmills.com/56459281-6fe6-4d9d-984f-385c9488d824.jpg",
  "description": "A classic apple pie.",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4",
    "reviewCount": "276",
    "bestRating": "5",
    "worstRating": "1"
  },
  "prepTime": "PT30M",
  "totalTime": "PT1H",
  "recipeYield": "8",
  "nutrition": {
    "@type": "NutritionInformation",
    "servingSize": "1 medium slice",
    "calories": "230 calories",
    "fatContent": "1 g",
    "carbohydrateContent": "43 g",
  },
  "recipeIngredient": [
    "1 box refrigerated pie crusts, softened as directed on box",
    "6 cups thinly sliced, peeled apples (6 medium)",
    "..."
  ],
  "recipeInstructions": [
    "1...",
    "2..."
   ]
}
</script>
</head>
<body>
</body>
</html>
  

Vì dữ liệu có cấu trúc gắn nhãn cho từng thành phần riêng trong công thức, người dùng có thể tìm kiếm công thức của bạn theo nguyên liệu, lượng calo, thời gian nấu, v.v.

Dữ liệu có cấu trúc được mã hóa bằng cách sử dụng thẻ đánh dấu trên trang chứa dữ liệu đó. Dữ liệu có cấu trúc trên trang sẽ mô tả nội dung của trang đó. Bạn không nên tạo các trang trống chỉ để chứa dữ liệu có cấu trúc. Bạn cũng không nên thêm dữ liệu có cấu trúc về thông tin không hiển thị cho người dùng, ngay cả khi thông tin là chính xác. Để biết thêm nguyên tắc về kỹ thuật và chất lượng, hãy xem Nguyên tắc chung về dữ liệu có cấu trúc.

Định dạng dữ liệu có cấu trúc

Tài liệu này mô tả các thuộc tính bắt buộc, đề xuất hoặc tùy chọn cho dữ liệu có cấu trúc có ý nghĩa đặc biệt đối với Google Tìm kiếm. Hầu hết dữ liệu có cấu trúc của Google Tìm kiếm đều sử dụng từ vựng trên schema.org, nhưng bạn nên dựa vào tài liệu trên developers.google.com làm nguồn tham khảo chính thức về hành vi của Google Tìm kiếm, thay vì tài liệu trên schema.org. Các thuộc tính hoặc đối tượng không được mô tả ở đây là không bắt buộc với Google Tìm kiếm, ngay cả khi được đánh dấu là bắt buộc trên shcema.org.

Hãy đảm bảo kiểm tra dữ liệu có cấu trúc của bạn bằng cách sử dụng công cụ Kiểm tra dữ liệu có cấu trúc trong quá trình phát triển. Sau khi triển khai, hãy sử dụng Báo cáo trạng thái kết quả nhiều định dạng để theo dõi tình trạng của các trang vì chúng có thể bị hỏng sau khi triển khai do các vấn đề về đặt mẫu hoặc phân phát.

Bạn phải bao gồm tất cả các thuộc tính bắt buộc để một đối tượng đủ điều kiện xuất hiện trong Google Tìm kiếm với giao diện nâng cao. Nói chung, việc xác định thêm các tính năng được đề xuất có thể khiến thông tin của bạn dễ xuất hiện hơn trong kết quả Tìm kiếm với giao diện nâng cao. Tuy nhiên, bạn nên chú trọng hơn vào việc cung cấp ít thuộc tính đề xuất nhưng đầy đủ và chính xác thay vì cố gắng cung cấp mọi thuộc tính đề xuất với dữ liệu không đầy đủ, không hợp lệ hoặc không chính xác.

Ngoài các thuộc tính và đối tượng nêu ở đây, Google cũng có thể sử dụng thuộc tính sameAs (giống như) và dữ liệu có cấu trúc khác trên schema.org. Một số phần tử này có thể được dùng để kích hoạt các tính năng Tìm kiếm trong tương lai, nếu chúng được coi là hữu ích.

Google Tìm kiếm hỗ trợ dữ liệu có cấu trúc ở các định dạng sau, trừ khi được nêu khác:

Định dạng Mô tả và vị trí
JSON-LD* (Nên dùng) Ký hiệu JavaScript được nhúng trong thẻ <script> trong phần tiêu đề hoặc nội dung của trang. Thẻ đánh dấu không nằm xen kẽ với văn bản hiển thị cho người dùng, điều này giúp việc xác định các mục dữ liệu lồng nhau dễ dàng hơn, chẳng hạn như mục Country (Quốc gia) trong PostalAddress (Địa chỉ bưu chính) trong MusicVenue (Địa điểm tổ chức buổi diễn) của một Event (Sự kiện). Ngoài ra, Google có thể đọc dữ liệu JSON-LD khi được nhập tự động vào nội dung của trang, chẳng hạn như mã JavaScript hoặc các tiện ích con nhúng trong hệ thống quản lý nội dung của bạn.
Microdata Đặc tả HTML cộng đồng mở được sử dụng để lồng dữ liệu có cấu trúc trong nội dung HTML. Giống như RDFa, Microdata sử dụng các thuộc tính thẻ HTML để đặt tên cho các thuộc tính bạn muốn hiển thị dưới dạng dữ liệu có cấu trúc. Định dạng này thường được sử dụng trong phần nội dung của trang, nhưng cũng có thể được sử dụng trong phần tiêu đề.
RDFa Một tiện ích HTML5 hỗ trợ dữ liệu được liên kết bằng cách sử dụng các thuộc tính thẻ HTML tương ứng với nội dung hiển thị cho người dùng mà bạn muốn mô tả cho các công cụ tìm kiếm. RDFa thường được sử dụng trong cả phần tiêu đề và phần nội dung của trang HTML.

Nguyên tắc về dữ liệu có cấu trúc

Hãy thực hiện theo nguyên tắc chung về dữ liệu có cấu trúc cũng như bất kỳ nguyên tắc cụ thể nào cho loại dữ liệu có cấu trúc của bạn. Nếu không, dữ liệu có cấu trúc của bạn có thể không đủ điều kiện để hiển thị dưới dạng kết quả nhiều định dạng trong Google Tìm kiếm.

Xây dựng, thử nghiệm và phát hành dữ liệu có cấu trúc của bạn

Xem quy trình mà chúng tôi đề xuất để tạo các trang dữ liệu có cấu trúc mới.