Dữ liệu có cấu trúc loại Bài viết (Article
, NewsArticle
, BlogPosting
)
Việc thêm dữ liệu có cấu trúc Article
vào các trang tin tức, blog và tin thể thao có thể giúp Google hiểu rõ hơn về trang web của bạn để thể hiện văn bản tiêu đề, hình ảnh và thông tin ngày theo cách hiệu quả hơn cho bài viết đó trong kết quả của Google Tìm kiếm và các sản phẩm khác (ví dụ: Google News và Trợ lý Google).
Tuy không bắt buộc phải dùng mã đánh dấu để đủ điều kiện sử dụng các tính năng của Google News (chẳng hạn như Tin bài hàng đầu), nhưng bạn có thể thêm Article
để cho Google biết rõ hơn về nội dung của bạn (ví dụ: nội dung đó là tin bài, tác giả là ai hoặc tiêu đề của bài viết là gì).
Ví dụ
Sau đây là ví dụ về trang có dữ liệu có cấu trúc Article
.
JSON-LD
<html> <head> <title>Title of a News Article</title> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "NewsArticle", "headline": "Title of a News Article", "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ], "datePublished": "2024-01-05T08:00:00+08:00", "dateModified": "2024-02-05T09:20:00+08:00", "author": [{ "@type": "Person", "name": "Jane Doe", "url": "https://example.com/profile/janedoe123" },{ "@type": "Person", "name": "John Doe", "url": "https://example.com/profile/johndoe123" }] } </script> </head> <body> </body> </html>
Vi dữ liệu
<html> <head> <title>Title of a News Article</title> </head> <body> <div itemscope itemtype="https://schema.org/NewsArticle"> <div itemprop="headline">Title of News Article</div> <meta itemprop="image" content="https://example.com/photos/1x1/photo.jpg" /> <meta itemprop="image" content="https://example.com/photos/4x3/photo.jpg" /> <img itemprop="image" src="https://example.com/photos/16x9/photo.jpg" /> <div> <span itemprop="datePublished" content="2024-01-05T08:00:00+08:00"> January 5, 2024 at 8:00am </span> (last modified <span itemprop="dateModified" content="2024-02-05T09:20:00+08:00"> February 5, 2024 at 9:20am </span> ) </div> <div> by <span itemprop="author" itemscope itemtype="https://schema.org/Person"> <a itemprop="url" href="https://example.com/profile/janedoe123"> <span itemprop="name">Jane Doe</span> </a> </span> and <span itemprop="author" itemscope itemtype="https://schema.org/Person"> <a itemprop="url" href="https://example.com/profile/johndoe123"> <span itemprop="name">John Doe</span> </a> </span> </div> </div> </body> </html>
Cách thêm dữ liệu có cấu trúc
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 trên trang. Nếu mới làm quen với dữ liệu có cấu trúc, bạn có thể tìm hiểu thêm về cách thức hoạt động của dữ liệu có cấu trúc.
Sau đây là thông tin tổng quan về cách xây dựng, kiểm tra và phát hành dữ liệu có cấu trúc.
- Thêm càng nhiều thuộc tính đề xuất áp dụng cho trang web của bạn càng tốt. Không có thuộc tính nào là bắt buộc; hãy thêm những thuộc tính phù hợp với nội dung của bạn. Tuỳ theo định dạng bạn đang sử dụng, hãy tìm hiểu nơi chèn dữ liệu có cấu trúc trên trang.
- Tuân theo các nguyên tắc.
- Xác thực mã của bạn bằng công cụ Kiểm tra kết quả nhiều định dạng rồi sửa mọi lỗi nghiêm trọng. Bạn cũng nên cân nhắc việc khắc phục mọi vấn đề không nghiêm trọng có thể bị gắn cờ trong công cụ này, vì những vấn đề này có thể giúp cải thiện chất lượng của dữ liệu có cấu trúc của bạn (tuy nhiên, bạn không nhất thiết thực hiện việc này để nội dung đủ điều kiện xuất hiện dưới dạng kết quả nhiều định dạng).
- Triển khai một vài trang có chứa dữ liệu có cấu trúc và sử dụng Công cụ kiểm tra URL để kiểm tra xem Google nhìn thấy trang đó như thế nào. Hãy đảm bảo rằng Google có thể truy cập trang của bạn và bạn không chặn trang bằng tệp robots.txt, thẻ
noindex
hoặc yêu cầu đăng nhập. Nếu có vẻ như trang không gặp vấn đề nào, bạn có thể yêu cầu Google thu thập lại dữ liệu các URL của mình. - Để thông báo cho Google về các thay đổi sau này, bạn nên gửi một sơ đồ trang web. Bạn có thể tự động hoá quy trình này bằng Search Console Sitemap API.
Nguyên tắc
Bạn phải tuân thủ những nguyên tắc này để dữ liệu có cấu trúc của bạn đủ điều kiện xuất hiện trong kết quả tìm kiếm trên Google.
Nguyên tắc kỹ thuật
- Đối với bài viết có nhiều phần, hãy đảm bảo
rel=canonical
trỏ đến từng trang riêng lẻ hoặc đến một trang "view-all" (xem toàn bộ) thay vì đến trang 1 của một loạt nội dung gồm nhiều phần. Tìm hiểu thêm về quy trình chuẩn hoá. - Nếu bạn cung cấp quyền truy cập vào nội dung trang web dựa trên gói thuê bao hoặc nếu người dùng phải đăng ký để truy cập, hãy cân nhắc việc thêm dữ liệu có cấu trúc cho nội dung thuê bao và nội dung có tường phí.
Định nghĩa các loại dữ liệu có cấu trúc
Để giúp Google hiểu rõ hơn về trang của bạn, hãy đưa nhiều thuộc tính nên có nhất có thể vào trang web. Không có thuộc tính nào là bắt buộc; hãy thêm những thuộc tính phù hợp với nội dung của bạn.
Đối tượng Article
Các đối tượng Article phải dựa trên một trong những loại mã schema.org sau đây: Article
,
NewsArticle
, BlogPosting
.
Sau đây là các thuộc tính được Google hỗ trợ:
Thuộc tính nên có | |
---|---|
author |
Tác giả của bài viết. Để giúp Google hiểu rõ về tác giả trên nhiều khía cạnh, bạn nên làm theo các phương pháp hay nhất về mã đánh dấu cho tác giả. |
author.name |
Tên của tác giả. |
author.url |
Đường liên kết đến một trang web xác định duy nhất tác giả của bài viết. Ví dụ: trang mạng xã hội, trang "giới thiệu về bản thân" hoặc trang tiểu sử của tác giả. Nếu URL là một trang hồ sơ nội bộ, bạn nên đánh dấu tác giả đó bằng dữ liệu có cấu trúc loại trang hồ sơ. |
dateModified |
Ngày giờ sửa đổi bài viết lần gần đây nhất, ở định dạng ISO 8601. Bạn nên cung cấp thông tin múi giờ; nếu không, chế độ mặc định sẽ là múi giờ mà Googlebot sử dụng. Hãy thêm thuộc tính |
datePublished |
Ngày giờ xuất bản bài viết lần đầu, ở định dạng ISO 8601. Bạn nên cung cấp thông tin múi giờ; nếu không, chế độ mặc định sẽ là múi giờ mà Googlebot sử dụng. Hãy thêm thuộc tính |
headline |
Tiêu đề của bài viết. Hãy cân nhắc việc sử dụng tiêu đề ngắn gọn, vì tiêu đề dài có thể bị cắt bớt trên một số thiết bị. |
image |
URL đến một hình ảnh đại diện cho bài viết. Hãy dùng hình ảnh có liên quan đến bài viết, thay vì biểu trưng hoặc chú thích. Nguyên tắc bổ sung về hình ảnh:
Ví dụ: "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ] |
Các phương pháp hay nhất về mã đánh dấu tác giả
Để giúp Google hiểu rõ và trình bày tác giả của nội dung, bạn nên làm theo các phương pháp hay nhất sau đây khi chỉ định tác giả trong mã đánh dấu:
Các phương pháp hay nhất về mã đánh dấu tác giả | |
---|---|
Đưa tất cả tác giả vào mã đánh dấu |
Đảm bảo tất cả những người được giới thiệu là tác giả đều được đưa vào mã đánh dấu trên trang web. |
Chỉ định nhiều tác giả |
Khi chỉ định nhiều tác giả, hãy liệt kê từng tác giả trong trường "author": [ {"name": "Willow Lane"}, {"name": "Regula Felix"} ]
Đừng hợp nhất nhiều tác giả trong cùng một trường "author": { "name": "Willow Lane, Regula Felix" } |
Sử dụng các trường bổ sung |
Để giúp Google hiểu rõ hơn về tác giả, bạn nên dùng các thuộc tính Ví dụ: nếu tác giả là một người, bạn có thể liên kết đến trang của tác giả nhằm cung cấp thêm thông tin: "author": [ { "@type": "Person", "name": "Willow Lane", "url": "https://www.example.com/staff/willow_lane" } ] Nếu tác giả là một tổ chức, bạn có thể liên kết đến trang chủ của tổ chức đó. "author": [ { "@type":"Organization", "name": "Some News Agency", "url": "https://www.example.com/" } ] |
Chỉ nêu tên tác giả trong thuộc tính |
Trong thuộc tính
"author": [ { "name": "Echidna Jones", "honorificPrefix": "Dr", "jobTitle": "Editor in Chief" } ], "publisher": [ { "name": "Bugs Daily" } ] } |
Sử dụng |
Sử dụng kiểu |
Sau đây là ví dụ về cách áp dụng các phương pháp hay nhất về mã đánh dấu tác giả:
"author": [ { "@type": "Person", "name": "Willow Lane", "jobTitle": "Journalist", "url": "https://www.example.com/staff/willow-lane" }, { "@type": "Person", "name": "Echidna Jones", "jobTitle": "Editor in Chief", "url": "https://www.example.com/staff/echidna-jones" } ], "publisher": { "name": "The Daily Bug", "url": "https://www.example.com" }, // + Other fields related to the article... }
Troubleshooting
If you're having trouble implementing or debugging structured data, here are some resources that may help you.
- If you're using a content management system (CMS) or someone else is taking care of your site, ask them to help you. Make sure to forward any Search Console message that details the issue to them.
- Google does not guarantee that features that consume structured data will show up in search results. For a list of common reasons why Google may not show your content in a rich result, see the General Structured Data Guidelines.
- You might have an error in your structured data. Check the list of structured data errors and the Unparsable structured data report.
- If you received a structured data manual action against your page, the structured data on the page will be ignored (although the page can still appear in Google Search results). To fix structured data issues, use the Manual Actions report.
- Review the guidelines again to identify if your content isn't compliant with the guidelines. The problem can be caused by either spammy content or spammy markup usage. However, the issue may not be a syntax issue, and so the Rich Results Test won't be able to identify these issues.
- Troubleshoot missing rich results / drop in total rich results.
- Allow time for re-crawling and re-indexing. Remember that it may take several days after publishing a page for Google to find and crawl it. For general questions about crawling and indexing, check the Google Search crawling and indexing FAQ.
- Post a question in the Google Search Central forum.