Hướng dẫn chi tiết về dữ liệu có cấu trúc loại Diễn đàn thảo luận

Dữ liệu có cấu trúc là một yếu tố quan trọng trong việc tối ưu hóa trang web cho các công cụ tìm kiếm. Đối với các trang web diễn đàn, việc sử dụng dữ liệu có cấu trúc loại Diễn đàn thảo luận (DiscussionForumPosting) không chỉ giúp Google Tìm kiếm hiểu rõ hơn về nội dung mà còn tăng khả năng hiển thị trong các kết quả tìm kiếm. Bài viết này sẽ hướng dẫn bạn cách triển khai và tối ưu hóa dữ liệu có cấu trúc cho diễn đàn thảo luận của mình.

Mã đánh dấu dạng diễn đàn thảo luận là một công cụ quan trọng trong việc tối ưu hóa SEO cho các trang web có nội dung dựa trên cộng đồng, nơi người dùng có thể trao đổi quan điểm và ý kiến của mình. Việc triển khai mã đánh dấu này giúp Google Tìm kiếm phân tích và nhận diện nội dung thảo luận một cách hiệu quả hơn, từ đó cải thiện khả năng hiển thị của trang web trong các kết quả tìm kiếm, đặc biệt là trong các tính năng như Thảo luận và diễn đàn, hoặc Quan điểm.

Nếu diễn đàn của bạn được tổ chức theo dạng hỏi đáp, bạn nên chuyển sang sử dụng mã đánh dấu loại Hỏi và đáp (Q&A) để đảm bảo tối ưu hóa phù hợp với cấu trúc nội dung. Điều này giúp Google hiểu rõ hơn về mục đích và cấu trúc của trang web, từ đó cung cấp các kết quả tìm kiếm liên quan và chính xác hơn.

Cách sử dụng DiscussionForumPosting trong diễn đàn thảo luận

Thông thường, bạn nên lồng các bình luận bên dưới bài đăng liên quan để duy trì cấu trúc chuỗi thảo luận. Nếu diễn đàn có tổ chức theo kiểu chuỗi bài riêng biệt, hãy sử dụng hệ thống cây bình luận để phản ánh chính xác cấu trúc của diễn đàn, điều này giúp Google nhận diện mối quan hệ giữa các bài đăng và bình luận dễ dàng hơn.

Ví dụ về mã JSON-LD cho một chuỗi thảo luận phổ biến:

{
"@context": "https://schema.org",
"@type": "DiscussionForumPosting",
"headline": "Very Popular Thread",
"comment": [{
"@type": "Comment",
"text": "This should not be this popular",
"comment": [{
"@type": "Comment",
"text": "Yes it should"
}]
}]
}

Nếu diễn đàn có cấu trúc tuyến tính, nơi một bài đăng gốc được theo sau bởi nhiều câu trả lời, tất cả nội dung nên được lồng dưới bài đăng gốc dưới dạng bình luận. Điều này giúp giữ cho nội dung có cấu trúc hợp lý và dễ dàng theo dõi.

Ví dụ về mã JSON-LD cho một diễn đàn không theo chuỗi tại URL cụ thể:

{
"@context": "https://schema.org",
"@type": "DiscussionForumPosting",
"headline": "Very Popular Thread",
"url": "https://example.com/post/very-popular-thread",
"comment": [{
"@type": "Comment",
"text": "First Post on this Page"
},{
"@type": "Comment",
"text": "Second Post on this Page"
}]
}

Trong trường hợp URL chủ yếu đại diện cho một bài đăng cụ thể, hãy sử dụng thuộc tính mainEntity hoặc mainEntityOfPage để xác định rõ bài đăng đó là đối tượng chính trong trang.

Ví dụ về mã JSON-LD xác định đối tượng chính trên trang:

{
"@context": "https://schema.org",
"@type": "WebPage",
"url": "https://example.com/post/very-popular-thread",
"mainEntity": {
"@type": "DiscussionForumPosting"
}
}

Đối với các trang web có danh sách bài đăng, chẳng hạn như trên một trang hồ sơ, chủ đề hoặc danh mục, bạn có thể quyết định chỉ đưa thông tin hiện có trên trang và chèn URL dẫn đến bài đăng cụ thể để xem thêm chi tiết. Điều này giúp tối ưu hóa dữ liệu có cấu trúc mà không làm phức tạp nội dung trang.

Đừng đánh dấu một bài đăng trên trang là thực thể chính nếu đó không phải là trang thảo luận cho bài đăng đó. Để thể hiện rằng các trang là một nhóm bài đăng có liên quan, bạn nên đính kèm tất cả các trang đó vào một Collection hoặc ItemList.

Cách thêm dữ liệu có cấu trúc

Dữ liệu có cấu trúc là một chuẩn định dạng quan trọng giúp cung cấp thông tin chi tiết về nội dung trên một trang web và phân loại nội dung một cách chính xác. Đối với những người mới bắt đầu, việc tìm hiểu cách thức hoạt động của dữ liệu có cấu trúc là cần thiết để tối ưu hóa nội dung.

Dưới đây là hướng dẫn tổng quan về quy trình xây dựng, kiểm tra và phát hành dữ liệu có cấu trúc. Để tìm hiểu chi tiết hơn, bạn có thể tham khảo các lớp học lập trình chuyên sâu về dữ liệu có cấu trúc.

  1. Thêm các thuộc tính bắt buộc là một bước không thể thiếu. Tùy thuộc vào định dạng bạn đang sử dụng, hãy xác định vị trí phù hợp để chèn dữ liệu có cấu trúc trên trang web của mình. Nếu bạn sử dụng hệ thống quản lý nội dung (CMS), việc tích hợp dữ liệu có cấu trúc có thể dễ dàng hơn bằng cách sử dụng các trình bổ trợ sẵn có trong CMS. Nếu bạn sử dụng JavaScript, hãy tìm hiểu cách tạo dữ liệu có cấu trúc bằng ngôn ngữ này để đảm bảo tính tương thích và hiệu quả.
  2. Tuân thủ các nguyên tắc và quy chuẩn về dữ liệu có cấu trúc là điều cần thiết để đảm bảo chất lượng và khả năng hiển thị của nội dung.
  3. Sau khi tạo dữ liệu có cấu trúc, bạn cần xác thực mã bằng công cụ Kiểm tra kết quả nhiều định dạng để phát hiện và sửa các lỗi nghiêm trọng. Ngoài ra, việc khắc phục các vấn đề không nghiêm trọng cũng có thể giúp nâng cao chất lượng dữ liệu, dù điều này không bắt buộc để nội dung đủ điều kiện xuất hiện dưới dạng kết quả nhiều định dạng.
  4. Khi đã hoàn thành, hãy triển khai một số trang có chứa dữ liệu có cấu trúc và sử dụng Công cụ kiểm tra URL để xem cách Google nhìn thấy và xử lý các trang này. Đảm bảo rằng Google có thể truy cập vào trang của bạn và rằng trang không bị chặn bởi tệp robots.txt, thẻ noindex, hoặc các yêu cầu đăng nhập. Nếu mọi thứ đều ổn, bạn có thể yêu cầu Google thu thập lại dữ liệu và lập chỉ mục các URL của mình.
    Lưu ý rằng quá trình Google thu thập và lập chỉ mục lại dữ liệu có thể mất vài ngày.
  5. Để đảm bảo Google nhận thức được các thay đổi trên trang của bạn, hãy gửi một sơ đồ trang web. Quy trình này có thể được tự động hóa bằng cách sử dụng API Sơ đồ trang web của Google Search Console.

Ví dụ

Ví dụ

Đoạn mã đánh dấu dưới đây minh họa cho một trang diễn đàn tuyến tính không phân nhánh:

JSON-LD

<html>
<head>
<title>I went to the concert!</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "DiscussionForumPosting",
"mainEntityOfPage": "https://example.com/post/very-popular-thread",
"headline": "I went to the concert!",
"text": "Look at how cool this concert was!",
"video": {
"@type": "VideoObject",
"contentUrl": "https://example.com/media/super-cool-concert.mp4",
"name": "Video of concert",
"uploadDate": "2024-03-01T06:34:34+02:00",
"thumbnailUrl": "https://example.com/media/super-cool-concert-snap.jpg"
},
"url": "https://example.com/post/very-popular-thread",
"author": {
"@type": "Person",
"name": "Katie Pope",
"url": "https://example.com/user/katie-pope",
"agentInteractionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/WriteAction",
"userInteractionCount": 8
}
},
"datePublished": "2024-03-01T08:34:34+02:00",
"interactionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/LikeAction",
"userInteractionCount": 27
},
"comment": [{
"@type": "Comment",
"text": "Who's the person you're with?",
"author": {
"@type": "Person",
"name": "Saul Douglas",
"url": "https://example.com/user/saul-douglas",
"agentInteractionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/WriteAction",
"userInteractionCount": 167
}
},
"datePublished": "2024-03-01T09:46:02+02:00"
},{
"@type": "Comment",
"text": "That's my mom, isn't she cool?",
"author": {
"@type": "Person",
"name": "Katie Pope",
"url": "https://example.com/user/katie-pope",
"agentInteractionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/WriteAction",
"userInteractionCount": 8
}
},
"datePublished": "2024-03-01T09:50:25+02:00",
"interactionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/LikeAction",
"userInteractionCount": 7
}
}]
}
</script>
</head>
<body>
</body>
</html>

Vi dữ liệu

<html>
<body>
<div id="main-post" itemtype="https://schema.org/DiscussionForumPosting" itemscope>
<meta itemprop="mainEntityOfPage" content="https://example.com/post/very-popular-thread" />
<meta itemprop="url" content="https://example.com/post/very-popular-thread" />
<div class="author-block" itemprop="author" itemtype="https://schema.org/Person" itemscope>
<div><a href="https://example.com/user/katie-pope" itemprop="url"><span itemprop="name">Katie Pope</span></a></div>
<div itemprop="agentInteractionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
<span itemprop="userInteractionCount">8</span>
<span itemprop="interactionType" content="https://schema.org/WriteAction">posts</span>
</div>
</div>
<div itemprop="datePublished" content="2024-03-01T08:34:34+02:00">March 1</div>
<div itemprop="headline">I went to the concert!</div>
<div>
<div itemprop="video" itemtype="https://schema.org/VideoObject" itemscope>
<meta itemprop="name" content="Video of concert" />
<meta itemprop="contentUrl" content="https://example.com/media/super-cool-concert.mp4" />
<meta itemprop="uploadDate" content="2024-03-01T06:34:34+02:00" />
<meta itemprop="thumbnailUrl" content="https://example.com/media/super-cool-concert-snap.jpg" />
</div>
<span itemprop="text">Look at how cool this concert was!</span>
</div>
<div itemprop="interactionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
<span itemprop="userInteractionCount">27</span>
<span itemprop="interactionType" content="https://schema.org/LikeAction">likes</span>
</div>
<div id="comment-1" itemprop="comment" itemtype="https://schema.org/Comment" itemscope>
<div class="author-block" itemprop="author" itemtype="https://schema.org/Person" itemscope>
<div><a href="https://example.com/user/saul-douglas" itemprop="url"><span itemprop="name">Saul Douglas</span></a></div>
<div itemprop="agentInteractionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
<span itemprop="userInteractionCount">167</span>
<span itemprop="interactionType" content="https://schema.org/WriteAction">posts</span>
</div>
</div>
<div itemprop="datePublished" content="2024-03-01T09:46:02+02:00">March 1</div>
<div>
<span itemprop="text">Who's the person you're with?</span>
</div>
</div>
<div id="comment-2" itemprop="comment" itemtype="https://schema.org/Comment" itemscope>
<div class="author-block" itemprop="author" itemtype="https://schema.org/Person" itemscope>
<div><a href="https://example.com/user/katie-pope" itemprop="url"><span itemprop="name">Katie Pope</span></a></div>
<div itemprop="agentInteractionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
<span itemprop="userInteractionCount">8</span>
<span itemprop="interactionType" content="https://schema.org/WriteAction">posts</span>
</div>
</div>
<div itemprop="datePublished" content="2024-03-01T09:50:25+02:00">March 1</div>
<div>
<span itemprop="text">That's my mom, isn't she cool?</span>
</div>
<div itemprop="interactionStatistic" itemtype="https://schema.org/InteractionCounter" itemscope>
<span itemprop="userInteractionCount">7</span>
<span itemprop="interactionType" content="https://schema.org/LikeAction">likes</span>
</div>
</div>
</div>
</body>
</html>

Nguyên tắc

Để đảm bảo dữ liệu có cấu trúc cho diễn đàn thảo luận của bạn đủ điều kiện xuất hiện trên Google Tìm kiếm, bạn cần tuân thủ các nguyên tắc sau:

  • Nguyên tắc chung về dữ liệu có cấu trúc
  • Nguyên tắc cơ bản của Tìm kiếm
  • Nguyên tắc về nội dung
  • Nguyên tắc về kỹ thuật

Nguyên tắc về nội dung

Chỉ sử dụng thẻ đánh dấu DiscussionForumPosting để mô tả các bài đăng do người dùng tạo ra trên trang web. Không nên áp dụng thẻ này cho nội dung chủ yếu do nhà xuất bản hoặc đại diện của họ tạo ra.

Nếu trang web của bạn có tính năng tương tự như một nền tảng mạng xã hội, bạn có thể sử dụng thẻ SocialMediaPosting, loại thẻ mẹ của DiscussionForumPosting, với yêu cầu tương tự.

Mặc dù các loại thẻ đánh dấu khác như Article, ImageObject, và VideoObject được khuyến khích sử dụng cho các nội dung tương tự như bình luận, thông tin tác giả, hoặc số liệu thống kê về lượt tương tác, bạn không nên sử dụng thẻ DiscussionForumPosting cho các mục đích này. Dưới đây là một số ví dụ về trường hợp sử dụng hợp lệ và không hợp lệ:

Các trường hợp sử dụng hợp lệ:

  • Một trang diễn đàn cộng đồng nơi người dùng thảo luận về một trò chơi cụ thể.
  • Một nền tảng diễn đàn tổng hợp chứa nhiều nội dung từ các diễn đàn con.
  • Một nền tảng mạng xã hội cho phép người dùng đăng bài và phản hồi bình luận hoặc nội dung đa phương tiện.

Các trường hợp sử dụng không hợp lệ:

  • Một bài viết hoặc blog do đại diện trang web trực tiếp viết (ngay cả khi có phần bình luận).
  • Một bài đánh giá sản phẩm từ người dùng.

Xin lưu ý rằng trong hầu hết các trường hợp sử dụng Google, trang Hỏi và Đáp được xem là một trường hợp đặc biệt của diễn đàn thảo luận. Nếu cấu trúc trang web của bạn chủ yếu là các câu hỏi kèm theo câu trả lời, bạn nên sử dụng thẻ đánh dấu Hỏi và Đáp. Nếu cấu trúc tổng thể chung chung hơn và không tập trung vào nội dung hỏi đáp, thì thẻ DiscussionForumPosting sẽ phù hợp hơn.

Hãy đảm bảo rằng mọi thẻ DiscussionForumPosting bao gồm toàn bộ văn bản của bài đăng và mọi thẻ Comment bao gồm toàn bộ văn bản của phản hồi nếu chúng xuất hiện trên trang đó.

Nguyên tắc kỹ thuật

Không giống như các tùy chọn thông thường đối với dữ liệu có cấu trúc, bạn nên cung cấp mã đánh dấu DiscussionForumPosting dưới dạng Vi dữ liệu (hoặc RDFa) nếu có thể. Điều này giúp tránh việc sao chép các khối văn bản lớn bên trong mã đánh dấu. Tuy nhiên, đây chỉ là khuyến nghị và JSON-LD vẫn được Google hỗ trợ đầy đủ.

Định nghĩa các loại dữ liệu có cấu trúc

Phần này mô tả các loại dữ liệu có cấu trúc liên quan đến mã đánh dấu DiscussionForumPosting.

Bạn cần thêm các thuộc tính bắt buộc để nội dung của mình đủ điều kiện xuất hiện trên Google Tìm kiếm. Bên cạnh đó, việc bổ sung các thuộc tính đề xuất có thể giúp cung cấp thêm thông tin về trang diễn đàn thảo luận của bạn và cải thiện trải nghiệm người dùng.

DiscussionForumPosting (hoặc SocialMediaPosting)

Google hỗ trợ mã đánh dấu SocialMediaPosting, tuy nhiên, các yêu cầu cơ bản đều giống nhau và hầu hết các trang web dạng diễn đàn sẽ phù hợp hơn với việc sử dụng mã đánh dấu DiscussionForumPosting. Do đó, trong phần này, chúng ta sẽ tập trung vào việc sử dụng DiscussionForumPosting để mô tả nội dung.

Mã đánh dấu DiscussionForumPosting xác định bài đăng gốc là chủ đề của một cuộc thảo luận. Mặc dù loại bài đăng này thường chứa văn bản, nhưng bạn cũng có thể sử dụng nó cho các bài đăng trên diễn đàn chỉ chứa nội dung nghe nhìn.

Thuộc tính bắt buộc

author

  • Dạng: Person hoặc Organization
  • Thông tin về tác giả của bài đăng. Để giúp Google hiểu rõ hơn về tác giả, bạn nên tuân theo các phương pháp tối ưu nhất về mã đánh dấu tác giả.

author.name

  • Dạng: Text
  • Tên của tác giả bài đăng.

datePublished

  • Dạng: DateTime
    Ngày và giờ bài đăng được xuất bản, theo định dạng ISO 8601.

text hoặc image hoặc video

  • Để trình bày nội dung của bài đăng, bạn phải sử dụng ít nhất một trong các thuộc tính sau: text, image, hoặc video. Thuộc tính này không bắt buộc nếu bài đăng được trình bày trên một trang khác với URL bên ngoài, chẳng hạn như trong các trang tiếp theo của diễn đàn hoặc trang danh mục của diễn đàn.

Thuộc tính nên có

author.url

  • Dạng: URL
  • Đường dẫn đến trang web xác định duy nhất tác giả của bài đăng, thường là trang hồ sơ trên diễn đàn. Trang này nên được đánh dấu bằng dữ liệu có cấu trúc dạng trang hồ sơ.

comment

  • Dạng: Comment
  • Các bình luận hoặc phản hồi về bài đăng (nếu có). Bạn nên đánh dấu bình luận theo thứ tự xuất hiện trên trang.

creativeWorkStatus

  • Dạng: Text
  • Khi bài đăng đã bị xóa nhưng vẫn được lưu giữ trong bối cảnh hoặc chuỗi bài, thuộc tính này nên được thiết lập thành Deleted (nếu có).

dateModified

  • Dạng: DateTime
  • Ngày và giờ chỉnh sửa bài đăng, theo định dạng ISO 8601 (nếu có). Nếu bài đăng không có thay đổi nào, bạn không cần sao chép ngày xuất bản.

headline

  • Dạng: Text
  • Tiêu đề của bài đăng. Nếu bài đăng không có tiêu đề riêng, không nên tạo tiêu đề bằng cách sao chép hoặc cắt bớt văn bản. Điều này không áp dụng cho SocialMediaPosting.

image

  • Dạng: ImageObject hoặc URL
  • Các hình ảnh đi kèm trong bài đăng (nếu có). Nếu không có hình ảnh, không nên thêm hình ảnh mặc định, biểu tượng hoặc hình ảnh giữ chỗ vào thuộc tính này.

interactionStatistic

  • Dạng: InteractionCounter
  • Số liệu thống kê về tương tác của người dùng với bài đăng chính (nếu có). Google hỗ trợ các loại tương tác sau:
    • https://schema.org/LikeAction: Số lượt thích.
    • https://schema.org/DislikeAction: Số lượt không thích.
    • https://schema.org/ViewAction: Số lượt xem.
    • https://schema.org/CommentAction hoặc https://schema.org/ReplyAction: Số lượng bình luận.
    • https://schema.org/ShareAction: Số lượt chia sẻ lại.

isPartOf

  • Dạng: CreativeWork hoặc URL
  • Nguồn chính của bài đăng nếu bài đăng thuộc một phần cụ thể của trang web lớn hơn (nếu có). Ví dụ: một diễn đàn con hoặc một nhóm trong một trang web lớn hơn. Nếu bạn sử dụng CreativeWork (chẳng hạn như WebPage), hãy dùng thuộc tính url để chỉ định URL tương ứng.

sharedContent

  • Dạng: CreativeWork
  • Nội dung chính được chia sẻ trong bài đăng (nếu có). Thuộc tính này thường được sử dụng để chia sẻ WebPages (kèm theo URL) trong một cuộc thảo luận theo chủ đề. Tuy nhiên, bạn cũng có thể sử dụng hình ảnh hoặc video cho thuộc tính này, đặc biệt nếu đó là nội dung chính của bình luận.
  • Ví dụ về việc có đường liên kết được chia sẻ trong bài đăng:
    ...
    "sharedContent": { "@type": "WebPage", "url": "https://example.com/external-url" }
    ...

text

  • Dạng: Text
  • Văn bản trong bài đăng (nếu có). Đây là trường hợp phổ biến, nhưng trong một số trường hợp, bạn có thể bỏ qua nếu bài đăng chỉ chứa nội dung nghe nhìn khác.

url

  • Dạng: URL
  • URL chính tắc của cuộc thảo luận. Trong các chuỗi bài gồm nhiều trang, hãy đặt thuộc tính này là URL của trang đầu tiên. Đối với một cuộc thảo luận cụ thể, thường là URL hiện tại.

video

  • Dạng: VideoObject
  • Mọi video đi kèm trong bài đăng (nếu có).

Comment

Kiểu Comment xác định một bình luận trên CreativeWork gốc, mà trong trường hợp này là DiscussionForumPosting. Kiểu dữ liệu này chia sẻ nhiều thuộc tính tương đồng với quy tắc áp dụng cho DiscussionForumPosting.

Thuộc tính bắt buộc

author

  • Dạng: Person hoặc Organization
  • Thông tin về tác giả của bình luận. Để giúp Google hiểu rõ hơn về tác giả, bạn nên tuân thủ các phương pháp tốt nhất về mã đánh dấu tác giả.

datePublished

  • Dạng: DateTime
  • Ngày và giờ bình luận được đăng, theo định dạng ISO 8601. Nếu không có thay đổi nào, bạn không cần sao chép ngày xuất bản.

text hoặc image hoặc video

  • Để trình bày nội dung của bình luận, bạn phải thêm một trong các thuộc tính sau: text, image, hoặc video.

Thuộc tính nên có

author.url

  • Dạng: URL
  • Đường liên kết đến trang web xác định duy nhất tác giả của bình luận, thường là trang hồ sơ trên diễn đàn. Trang này nên được đánh dấu bằng dữ liệu có cấu trúc dạng trang hồ sơ.

comment

  • Dạng: Comment
  • Một bình luận khác hoặc phản hồi về bình luận gốc (nếu có). Bạn nên đánh dấu các bình luận theo thứ tự xuất hiện trên trang.

creativeWorkStatus

  • Dạng: Text
  • Nếu bình luận đã bị xóa nhưng vẫn tồn tại trong bối cảnh hoặc chuỗi thảo luận, hãy thiết lập thuộc tính này thành Deleted (nếu có).

dateModified

  • Dạng: DateTime
  • Ngày và giờ chỉnh sửa gần nhất của bình luận, theo định dạng ISO 8601 (nếu có).

image

  • Dạng: ImageObject hoặc URL
  • Mọi hình ảnh kèm theo trong bình luận (nếu có). Nếu không có hình ảnh, không nên thêm hình ảnh mặc định, biểu tượng hoặc hình ảnh giữ chỗ vào trường này.

interactionStatistic

  • Dạng: InteractionCounter
  • Số liệu thống kê về tương tác của người dùng đối với bình luận (nếu có). Google hỗ trợ các loại tương tác sau:
    • https://schema.org/LikeAction: Số lượt thích.
    • https://schema.org/DislikeAction: Số lượt không thích.
    • https://schema.org/ViewAction: Số lượt xem.
    • https://schema.org/CommentAction hoặc https://schema.org/ReplyAction: Số lượng bình luận.
    • https://schema.org/ShareAction: Số lượt chia sẻ lại.

sharedContent

  • Dạng: CreativeWork
  • Nội dung chính được chia sẻ trong bình luận (nếu có). Cách sử dụng phổ biến nhất của thuộc tính này là chia sẻ WebPages (kèm URL) trong cuộc thảo luận theo chủ đề. Tuy nhiên, bạn cũng có thể sử dụng hình ảnh hoặc video nếu đó là nội dung chính của bình luận.
  • Ví dụ về cách sử dụng thuộc tính này:
    ...
    "sharedContent": { "@type": "WebPage", "url": "https://example.com/external-url" }
    ...

url

  • Dạng: URL
  • URL dẫn đến bình luận cụ thể trên trang (nếu có). Không nên thêm thuộc tính này nếu đó chỉ là URL của bài đăng gốc.

video

  • Dạng: VideoObject
  • Mọi video kèm theo trong bình luận (nếu có).

InteractionCounter

InteractionCounter cho phép liên kết số lượng với một kiểu tương tác nhất định. Bạn có thể sử dụng thuộc tính này trên cả thuộc tính nội dung (DiscussionForumPosting và Comment) cũng như thuộc tính author.

userInteractionCount

  • Dạng: Integer
  • Số lượt thực hiện tương tác này.

interactionType

  • Dạng: Loại phụ của Action
  • Để biết danh sách loại phụ Action hợp lệ cho thuộc tính này, hãy kiểm tra thuộc tính đang sử dụng InteractionCounter (ví dụ: interactionStatistic).

Theo dõi kết quả của nhiều định dạng bằng Search Console

Search Console là công cụ hỗ trợ bạn theo dõi hiệu suất của các trang web trên Google Tìm kiếm. Mặc dù bạn không bắt buộc phải đăng ký Search Console để trang web xuất hiện trên Google Tìm kiếm, nhưng việc sử dụng công cụ này sẽ giúp bạn hiểu rõ hơn và cải thiện cách Google đánh giá trang web của bạn. Bạn nên kiểm tra Search Console trong các trường hợp sau:

  • Sau khi triển khai dữ liệu có cấu trúc lần đầu
  • Sau khi phát hành mẫu mới hoặc cập nhật mã của bạn
  • Phân tích lưu lượng truy cập định kỳ

Sau lần đầu triển khai dữ liệu có cấu trúc

Sau khi Google lập chỉ mục các trang của bạn, hãy sử dụng báo cáo trạng thái kết quả nhiều định dạng để phát hiện và khắc phục sự cố. Lý tưởng nhất là số lượng mục hợp lệ sẽ tăng lên và số lượng mục không hợp lệ sẽ không tăng. Nếu bạn phát hiện ra vấn đề trong dữ liệu có cấu trúc, hãy thực hiện các bước sau:

  • Sửa chữa các mục không hợp lệ.
  • Kiểm tra URL hoạt động để xác minh rằng vấn đề đã được giải quyết.
  • Yêu cầu xác thực lại bằng cách sử dụng báo cáo trạng thái.

Sau khi phát hành các mẫu mới hoặc cập nhật mã

Khi bạn thực hiện các thay đổi đáng kể trên trang web, hãy theo dõi số lượng mục dữ liệu có cấu trúc không hợp lệ. Nếu số lượng mục không hợp lệ tăng, có thể bạn đã triển khai một mẫu mới không hoạt động đúng hoặc trang web của bạn đang tương tác với mẫu hiện tại theo cách không hợp lệ.

Nếu số lượng mục hợp lệ giảm (nhưng số mục không hợp lệ không tăng), có thể dữ liệu có cấu trúc không còn được nhúng trên các trang của bạn. Hãy sử dụng công cụ kiểm tra URL để xác định nguyên nhân gây ra vấn đề.

Cảnh báo: Không nên sử dụng các đường liên kết lưu trong bộ nhớ đệm để gỡ lỗi trên các trang. Thay vào đó, hãy sử dụng công cụ kiểm tra URL để có phiên bản mới nhất của trang.

Phân tích lưu lượng truy cập định kỳ

Sử dụng báo cáo hiệu suất để phân tích lưu lượng truy cập bạn nhận được từ Google Tìm kiếm. Dữ liệu từ báo cáo sẽ cung cấp cho bạn thông tin về tần suất trang web xuất hiện dưới dạng kết quả nhiều định dạng trong tìm kiếm, tần suất người dùng nhấp vào trang, và vị trí trung bình của trang trong kết quả tìm kiếm. Bạn cũng có thể tự động truy xuất các kết quả này qua Search Console API.

Khắc phục sự cố

Nếu bạn gặp phải vấn đề khi triển khai hoặc gỡ lỗi dữ liệu có cấu trúc, có thể tham khảo một số tài nguyên trợ giúp sau:

  • Nếu bạn đang sử dụng hệ thống quản lý nội dung (CMS) hoặc có người khác quản lý trang web của bạn, hãy yêu cầu họ hỗ trợ. Đừng quên chuyển tiếp các thông báo từ Search Console để họ nắm rõ vấn đề.
  • Google không đảm bảo rằng các tính năng sử dụng dữ liệu có cấu trúc sẽ luôn xuất hiện trong kết quả tìm kiếm. Để tìm hiểu các lý do phổ biến khiến nội dung của bạn không xuất hiện 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”.
  • Có thể có lỗi trong dữ liệu có cấu trúc của bạn. Hãy xem danh sách các lỗi liên quan đến dữ liệu có cấu trúc để xác định và khắc phục vấn đề.
  • Nếu trang của bạn bị á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 của Google. Để khắc phục, hãy sử dụng báo cáo “Biện pháp thủ công”.
  • Xem lại các nguyên tắc để đảm bảo rằng nội dung của bạn tuân thủ đúng yêu cầu. Nguyên nhân gây lỗi có thể do bạn sử dụng nội dung hoặc thẻ đánh dấu không hợp lệ. Tuy nhiên, không phải tất cả các vấn đề đều là lỗi cú pháp, và công cụ kiểm tra kết quả nhiều định dạng có thể không phát hiện được các vấn đề này.
  • Khắc phục sự cố thiếu kết quả nhiều định dạng hoặc giảm tổng số kết quả nhiều định dạng
  • Hãy kiên nhẫn chờ Google thu thập dữ liệu và lập chỉ mục lại. Xin lưu ý rằng có thể mất vài ngày để Google tìm và thu thập dữ liệu sau khi bạn xuất bản một trang mới. Đối với các câu hỏi liên quan đến việc thu thập dữ liệu và lập chỉ mục, hãy tham khảo nội dung “Câu hỏi thường gặp về việc thu thập dữ liệu và lập chỉ mục trên Google Tìm kiếm”.
  • Đăng câu hỏi trong diễn đàn của Trung tâm Google Tìm kiếm để nhận được sự trợ giúp từ cộng đồng và chuyên gia.

Việc triển khai dữ liệu có cấu trúc loại Diễn đàn thảo luận là một bước quan trọng trong quá trình tối ưu hóa SEO cho trang web diễn đàn của bạn. Nó không chỉ giúp cải thiện khả năng hiển thị trên Google Tìm kiếm mà còn nâng cao trải nghiệm người dùng. Hãy tuân thủ các nguyên tắc và sử dụng công cụ kiểm tra của Google để đảm bảo rằng dữ liệu có cấu trúc của bạn được triển khai đúng cách và hiệu quả.

Facebook
X
LinkedIn
Tumblr
Threads
logo_v4seowebsite

V4SEO là đội ngũ SEO & Web xuất phát từ Nha Trang, triển khai dự án cho doanh nghiệp trên toàn quốc. Chúng tôi cung cấp Dịch vụ SEO Nha Trang theo chuẩn Google, kết hợp kỹ thuật, nội dung và entity để tăng trưởng bền vững. Song song, Dịch vụ thiết kế website Nha Trang tối ưu UX, tốc độ và Core Web Vitals nhằm tối đa chuyển đổi; báo cáo minh bạch, hỗ trợ dài hạn.

Nội dung được sự cố vấn của chuyên gia SEO - Võ Quang Vinh
author-founder-v4seowebsite

Võ Quang Vinh – Chuyên gia SEO với hơn 10 năm kinh nghiệm triển khai hàng trăm dự án SEO tổng thể, từ thương mại điện tử đến dịch vụ địa phương. Từng đảm nhiệm vai trò SEO và là Keymember tại Gobranding và dân dắt đội SEO BachhoaXanh.com, anh là người đứng sau nhiều chiến dịch tăng trưởng traffic vượt bậc. Hiện tại, Vinh là người sáng lập và điều hành V4SEO, cung cấp giải pháp SEO & thiết kế website chuẩn UX/UI giúp doanh nghiệp bứt phá thứ hạng Google và tối ưu chuyển đổi. 

Bài viết liên quan
ĐĂNG KÝ V4SEO NGAY HÔM NAY KHUYẾN MÃI 15% TẤT CẢ DỊCH VỤ ÁP DỤNG TỚI HẾT THÁNG 12/2025

Nhận tư vấn từ V4SEO Đăng ký ngay hôm nay Bứt phá trong mai sau