Trong bối cảnh ngày càng nhiều trang web cung cấp nội dung có tường phí hoặc yêu cầu đăng ký thuê bao, việc triển khai dữ liệu có cấu trúc để giúp Google hiểu rõ và hiển thị đúng nội dung này là điều vô cùng quan trọng. Thông qua việc sử dụng JSON-LD và các thuộc tính của schema.org, các trang web có thể chỉ định rõ ràng nội dung nào yêu cầu thanh toán hoặc đăng ký. Điều này giúp tránh việc Google hiểu nhầm giữa nội dung có tường phí với các kỹ thuật che giấu nội dung – một hành vi vi phạm chính sách của Google về nội dung rác.
Trang này hướng dẫn cách sử dụng JSON-LD của schema.org để triển khai dữ liệu có cấu trúc cho nội dung có tường phí trên trang web của bạn thông qua các thuộc tính của CreativeWork. Việc triển khai dữ liệu có cấu trúc này giúp Google phân biệt rõ ràng giữa nội dung có tường phí và nội dung sử dụng kỹ thuật che giấu, một kỹ thuật vi phạm chính sách về nội dung rác của Google. Tìm hiểu thêm về cách triển khai gói thuê bao và nội dung có tường phí.
Lưu ý: Hướng dẫn này chỉ áp dụng cho các nội dung mà bạn muốn Google thu thập dữ liệu và lập chỉ mục. Nếu bạn không muốn nội dung có tường phí của mình được Google lập chỉ mục, bạn có thể bỏ qua hướng dẫn này.
Ví dụ
Dưới đây là một ví dụ về cách triển khai dữ liệu có cấu trúc cho một bài viết thuộc loại NewsArticle, trong đó có phần nội dung được bảo vệ bằng tường phí:
<html>
<head>
<title>Tiêu đề bài viết</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "Tiêu đề bài viết",
"image": "https://example.org/thumbnail1.jpg",
"datePublished": "2025-02-05T08:00:00+08:00",
"dateModified": "2025-02-05T09:20:00+08:00",
"author": {
"@type": "Person",
"name": "John Doe",
"url": "https://example.com/profile/johndoe123"
},
"description": "Một bài viết rất tuyệt vời",
"isAccessibleForFree": false,
"hasPart": {
"@type": "WebPageElement",
"isAccessibleForFree": false,
"cssSelector" : ".paywall"
}
}
</script>
</head>
<body>
<div class="non-paywall">
Nội dung miễn phí
</div>
<div class="paywall">
Nội dung có tường phí
</div>
</body>
</html>Nguyên tắc
Để trang web của bạn đủ điều kiện xuất hiện trong kết quả tìm kiếm, bạn cần tuân thủ các nguyên tắc chung về dữ liệu có cấu trúc và các yêu cầu kỹ thuật cụ thể. Dưới đây là những nguyên tắc áp dụng riêng cho nội dung có tường phí:
Lưu ý: Vi phạm các chính sách này có thể khiến trang của bạn không đủ điều kiện xuất hiện trong kết quả tìm kiếm. Để hiểu rõ hơn, bạn nên tham khảo bài viết về mã đánh dấu có cấu trúc mang tính vi phạm.
- Định dạng được chấp nhận: JSON-LD và vi dữ liệu (Microdata) là những định dạng được Google chấp nhận để chỉ định dữ liệu có cấu trúc cho nội dung có tường phí.
- Không lồng ghép nội dung: Tránh lồng các phần nội dung vào nhau khi triển khai mã đánh dấu cho nội dung có tường phí.
- Sử dụng bộ chọn CSS đúng cách: Chỉ sử dụng các bộ chọn
.classcho thuộc tínhcssSelectorkhi định nghĩa phần nội dung có tường phí.
Thêm mã đánh dấu vào nội dung có tường phí
Nếu trang web của bạn cung cấp nội dung yêu cầu gói thuê bao hoặc người dùng phải đăng ký để truy cập, hãy thực hiện theo các bước sau để đảm bảo nội dung của bạn được lập chỉ mục đúng cách:
- Thêm tên lớp (class) cho từng phần nội dung có tường phí:Ví dụ:
<body>
<p>Nội dung này không có tường phí và hiển thị cho tất cả mọi người.</p>
<div class="paywall">Nội dung này có tường phí và yêu cầu đăng ký hoặc thuê bao.</div>
</body>
- Thêm dữ liệu có cấu trúc NewsArticle: Triển khai JSON-LD để mô tả chi tiết về bài viết, bao gồm cả thông tin về nội dung có tường phí.
- Thêm thuộc tính JSON-LD cho các phần có tường phí: Sử dụng
cssSelectorđể tham chiếu đến tên lớp đã thêm ở bước 1.Ví dụ:{
"@context": "https://schema.org",
"@type": "NewsArticle",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://example.org/article"
},
"isAccessibleForFree": false,
"hasPart": {
"@type": "WebPageElement",
"isAccessibleForFree": false,
"cssSelector": ".paywall"
}
}
- Xác thực mã của bạn: Sử dụng công cụ kiểm tra kết quả nhiều định dạng của Google để xác thực mã và sửa chữa bất kỳ lỗi nghiêm trọng nào trước khi trang của bạn được lập chỉ mục.
Nhiều phần nội dung có tường phí
Nếu trang web của bạn chứa nhiều phần nội dung yêu cầu tường phí, bạn cần triển khai dữ liệu có cấu trúc dưới dạng mảng để xác định từng phần cụ thể.
Ví dụ về các phần có tường phí:
<body>
<div class="section1">Nội dung này được bảo vệ bởi tường phí và yêu cầu đăng ký hoặc thuê bao.</div>
<p>Nội dung này không có tường phí và hiển thị cho tất cả mọi người.</p>
<div class="section2">Đây là một phần khác được bảo vệ bởi tường phí, hoặc yêu cầu đăng ký/thuê bao.</div>
</body>
Ví dụ về dữ liệu có cấu trúc cho nhiều phần nội dung có tường phí:
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://example.org/article"
},
"isAccessibleForFree": false,
"hasPart": [
{
"@type": "WebPageElement",
"isAccessibleForFree": false,
"cssSelector": ".section1"
},
{
"@type": "WebPageElement",
"isAccessibleForFree": false,
"cssSelector": ".section2"
}
]
}
Các loại dữ liệu có cấu trúc được hỗ trợ
Mã đánh dấu này được hỗ trợ cho loại CreativeWork và các loại cụ thể hơn như:
- Article
- NewsArticle
- Blog
- Comment
- Course
- HowTo
- Message
- Review
- WebPage
Bạn có thể sử dụng nhiều loại dữ liệu cùng lúc trên schema.org, ví dụ:
"@type": ["Article", "LearningResource"]
Thuộc tính bắt buộc
- isAccessibleForFree (
Boolean): Xác định liệu bài viết có thể truy cập tự do hoặc yêu cầu tường phí. Thiết lập giá trị này thànhfalseđể chỉ định rằng nội dung có tường phí.
Thuộc tính nên có
- hasPart.cssSelector (
CssSelectorType): Bộ chọn CSS tham chiếu đến tên lớp mà bạn đã thiết lập trong HTML để chỉ định phần có tường phí. - hasPart.@type (
Text): Thiết lập@typethànhWebPageElementđể chỉ định loại phần tử web. - hasPart.isAccessibleForFree (
Boolean): Xác định liệu phần này của bài viết có tường phí hay không. Thiết lập thuộc tínhisAccessibleForFreethànhfalseđể chỉ định rằng phần này yêu cầu quyền truy cập thông qua đăng ký hoặc thuê bao.
Những điều cần cân nhắc khi sử dụng AMP
Khi triển khai trang AMP chứa nội dung có tường phí, cần lưu ý các điểm sau:
- Sử dụng amp-subscriptions: Nếu trang AMP của bạn có nội dung có tường phí, hãy triển khai amp-subscriptions để quản lý quyền truy cập.
- Quyền truy cập cho bot: Đảm bảo rằng điểm cuối uỷ quyền của bạn cung cấp quyền truy cập vào nội dung cho Googlebot và các bot khác. Quy trình này có thể khác nhau tùy thuộc vào nhà xuất bản.
- Chính sách truy cập đồng nhất: Cả trang AMP và không phải AMP của bạn cần phải có chính sách truy cập bot giống nhau. Nếu không, bạn có thể gặp lỗi “nội dung không khớp” trong Search Console.
Những điều cần cân nhắc khi sử dụng AI tạo sinh trong Tìm kiếm
- Thông tin tổng quan do AI tạo: Khi Google sử dụng AI để tạo thông tin tổng quan về một chủ đề, các nội dung có tường phí sẽ không xuất hiện trong phần xem trước này nếu dữ liệu có cấu trúc về tường phí đã được triển khai trên trang.
- Trình duyệt AI: Các công cụ AI dùng để duyệt web, như một tính năng riêng biệt ngoài thông tin tổng quan do AI tạo, sẽ không hiển thị các điểm chính từ bài viết có tường phí nếu dữ liệu có cấu trúc được thiết lập.
Đảm bảo Google có thể thu thập dữ liệu và lập chỉ mục trang của bạn
- Quyền truy cập của Googlebot: Để Google có thể thu thập dữ liệu và lập chỉ mục nội dung, bao gồm cả các phần có tường phí, hãy đảm bảo Googlebot (và Googlebot-News nếu có) có thể truy cập vào trang của bạn.
- Công cụ kiểm tra URL: Sử dụng Công cụ kiểm tra URL để xác minh cách Google thu thập dữ liệu và hiển thị URL trên trang web của bạn.
Kiểm soát thông tin xuất hiện trong kết quả tìm kiếm
- Chặn liên kết lưu trong bộ nhớ đệm: Sử dụng thẻ meta
robots noarchiveđể ngăn Google hiển thị liên kết lưu trong bộ nhớ đệm của trang. - Loại trừ nội dung khỏi đoạn trích: Dùng thuộc tính HTML
data-nosnippetđể loại bỏ một số nội dung khỏi đoạn trích trong kết quả tìm kiếm. Bạn cũng có thể giới hạn số lượng ký tự của đoạn trích bằng cách sử dụng thẻ metarobots max-snippet.
Khắc phục sự cố
Nếu bạn gặp khó khăn trong quá trình triển khai hoặc gỡ lỗi dữ liệu có cấu trúc, dưới đây là một số nguồn tài nguyên hỗ trợ mà bạn có thể tham khảo:
- Hỗ trợ từ hệ thống quản lý nội dung (CMS): Nếu bạn đang sử dụng một CMS hoặc có người quản lý trang web, hãy yêu cầu họ hỗ trợ xử lý các sự cố. Đừng quên chuyển tiếp mọi thông báo trong Search Console để họ có thể nắm rõ vấn đề.
- Kiểm tra tính năng hiển thị trong kết quả tìm kiếm: Google không cam kết rằng các tính năng sử dụng dữ liệu có cấu trúc sẽ xuất hiện trong kết quả tìm kiếm. Để kiểm tra các nguyên nhân phổ biến khiến nội dung của bạn không hiển thị trong kết quả nhiều định dạng, hãy tham khảo Nguyên tắc chung về dữ liệu có cấu trúc.
- Xử lý lỗi trong dữ liệu có cấu trúc: Nếu dữ liệu có cấu trúc của bạn gặp lỗi, hãy xem danh sách các lỗi phổ biến liên quan đến dữ liệu có cấu trúc để xử lý.
- Biện pháp thủ công: Nếu trang của bạn bị Google áp dụng biện pháp thủ công, dữ liệu có cấu trúc trên trang sẽ bị bỏ qua, mặc dù trang vẫn có thể xuất hiện trong kết quả tìm kiếm. Để khắc phục, hãy sử dụng báo cáo Biện pháp thủ công để yêu cầu xem xét lại sau khi sửa lỗi.
- Xem lại nguyên tắc: Đảm bảo nội dung của bạn tuân thủ tất cả các nguyên tắc của Google. Nguyên nhân gây lỗi có thể do nội dung không hợp lệ hoặc thẻ đánh dấu sai quy cách. Công cụ kiểm tra kết quả nhiều định dạng có thể không xác định được tất cả các vấn đề, vì vậy bạn cần kiểm tra kỹ lưỡng.
- Giảm hiệu quả hiển thị trong kết quả nhiều định dạng: Nếu trang của bạn thiếu kết quả nhiều định dạng hoặc có sự giảm sút trong tổng số kết quả, hãy dành thời gian để Google thu thập dữ liệu và lập chỉ mục lại. Lưu ý rằng có thể mất vài ngày để Google phát hiện và thu thập dữ liệu trên trang của bạn sau khi xuất bản.
- Tham khảo diễn đàn Google: Nếu bạn có câu hỏi hoặc cần thêm sự hỗ trợ, hãy đăng câu hỏi trong diễn đàn của Trung tâm Google Tìm kiếm để nhận sự trợ giúp từ cộng đồng.
Việc triển khai dữ liệu có cấu trúc cho nội dung có tường phí không chỉ giúp Google hiểu và hiển thị đúng nội dung của bạn trong kết quả tìm kiếm mà còn đảm bảo tuân thủ các quy định về SEO và nội dung web. Thực hiện đúng các hướng dẫn và nguyên tắc giúp nội dung của bạn có cơ hội tiếp cận người dùng một cách chính xác và hiệu quả, đồng thời tránh các lỗi liên quan đến nội dung bị che giấu hoặc vi phạm chính sách của Google.
