Structured Data สำหรับฟอรัมการสนทนา (DiscussionForumPosting)

ภาพแสดงฟีเจอร์การสนทนาและฟอรัม

มาร์กอัปฟอรัมการสนทนาออกแบบมาสำหรับเว็บไซต์สไตล์ฟอรัมที่ผู้คนแชร์มุมมองโดยตรงร่วมกัน เมื่อเว็บไซต์ฟอรัมเพิ่มมาร์กอัปนี้ Google Search จะระบุการสนทนาออนไลน์ทั่วทั้งอินเทอร์เน็ตได้ดียิ่งขึ้นและใช้ประโยชน์จากมาร์กอัปนี้ในฟีเจอร์ต่างๆ เช่น การสนทนาและฟอรัม รวมถึงความคิดเห็น

วิธีใช้ DiscussionForumPosting ภายในฟอรัม

โดยทั่วไป เราขอแนะนําให้ฝังความคิดเห็นไว้ในโพสต์ที่เกี่ยวข้อง หากฟอรัมมีโครงสร้างชุดข้อความแยกเป็นของตัวเอง ให้ใช้แผนผังความคิดเห็นเพื่อแสดงโครงสร้างดังนี้

{
  "@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",
      ...
    }]
  }]
}

หากมีลักษณะเป็นแบบเชิงเส้นมากกว่า (เช่น โพสต์ต้นฉบับตามด้วยการตอบกลับ) ให้ฝังการตอบกลับทั้งหมดไว้ใต้โพสต์ต้นฉบับโดยให้เป็นความคิดเห็น ตามหลักการแล้ว หน้าเนื้อหาหน้าต่อๆ ไปในฟอรัมที่มีหลายหน้าจะมีโพสต์ต้นฉบับที่มี URL ของหน้าหลัก ดังนี้

{
  // JSON-LD on non-threaded forum at https://example.com/post/very-popular-thread/14
  "@context": "https://schema.org",
  "@type": "DiscussionForumPosting",
  "headline": "Very Popular Thread", // Only the headline/topic is explicitly present
  "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",
    ...
  }]
}

หาก URL เกี่ยวข้องกับโพสต์เดียวเป็นหลัก ให้ใช้ mainEntity (หรือ mainEntityOfPage) เพื่อระบุ DiscussionForumPosting หลัก ดังนี้

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

สำหรับหน้าเว็บที่มีรายการโพสต์ (เช่น ในโปรไฟล์ หัวข้อ หรือหน้าหมวดหมู่) เป็นเรื่องธรรมดาที่หน้าเว็บเหล่านั้นจะไม่แสดงข้อมูลทั้งหมดในหน้าเดียวกัน และกำหนดให้ผู้ใช้คลิกเพื่อดูข้อมูลเพิ่มเติม (เช่น การตอบกลับ) ทั้งนี้ขึ้นอยู่กับการตัดสินใจของคุณว่าจะเลือกรวมเฉพาะข้อมูลที่มีอยู่ในหน้า (และรวม URL ของโพสต์สำหรับการสนทนาโดยเฉพาะ) หรือไม่

อย่าทำเครื่องหมายโพสต์ 1 รายการในหน้าเว็บให้เป็นเอนทิตีหลัก หากไม่ใช่หน้าการสนทนาของโพสต์นั้น หากต้องการแสดงว่าหน้าเว็บเป็นชุดโพสต์ที่เกี่ยวข้องกัน การแนบโพสต์ทั้งหมดไปที่ Collection หรือ ItemList ก็อาจเป็นประโยชน์

วิธีเพิ่มข้อมูลที่มีโครงสร้าง

ข้อมูลที่มีโครงสร้างคือรูปแบบมาตรฐานในการแจ้งข้อมูลเกี่ยวกับหน้าและจำแนกประเภทเนื้อหาของหน้า หากคุณเพิ่งใช้ข้อมูลที่มีโครงสร้างเป็นครั้งแรก โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของข้อมูลที่มีโครงสร้าง

ต่อไปนี้เป็นภาพรวมเกี่ยวกับวิธีสร้าง ทดสอบ และเผยแพร่ข้อมูลที่มีโครงสร้าง ดูคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีเพิ่มข้อมูลที่มีโครงสร้างลงในหน้าเว็บได้ใน Codelab สำหรับข้อมูลที่มีโครงสร้าง

  1. เพิ่มพร็อพเพอร์ตี้ที่จำเป็น ดูตำแหน่งการแทรก Structured Data ในหน้าเว็บตามรูปแบบที่คุณใช้อยู่
  2. ปฏิบัติตามหลักเกณฑ์
  3. ตรวจสอบความถูกต้องของโค้ดโดยใช้การทดสอบผลการค้นหาที่เป็นริชมีเดีย และแก้ไขข้อผิดพลาดที่สําคัญทั้งหมด พิจารณาแก้ไขปัญหาที่ไม่สําคัญซึ่งอาจมีการรายงานในเครื่องมือด้วย เพราะอาจช่วยปรับปรุงคุณภาพของ Structured Data ได้ (แต่ไม่จําเป็นว่าต้องมีสิทธิ์ปรากฏในผลการค้นหาที่เป็นริชมีเดีย)
  4. ทำให้หน้าบางหน้าที่มีข้อมูลที่มีโครงสร้างใช้งานได้และใช้เครื่องมือตรวจสอบ URL เพื่อทดสอบว่า Google เห็นหน้าในลักษณะใด ตรวจสอบว่า Google เข้าถึงหน้าดังกล่าวได้และไม่มีการบล็อกหน้าด้วยไฟล์ robots.txt, แท็ก noindex หรือข้อกำหนดให้เข้าสู่ระบบ หากหน้าเว็บดูถูกต้องดีแล้ว คุณขอให้ Google ทำการ Crawl URL อีกครั้งได้
  5. หากต้องการให้ Google ทราบถึงการเปลี่ยนแปลงที่จะเกิดขึ้นในอนาคตอยู่ตลอด เราขอแนะนำให้ส่ง Sitemap ซึ่งกำหนดให้ดำเนินการแบบอัตโนมัติได้โดยใช้ Search Console Sitemap API

ตัวอย่าง

ตัวอย่างมาร์กอัปต่อไปนี้แสดงหน้าฟอรัมเชิงเส้นแบบไม่แยกชุดข้อความ

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

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

หลักเกณฑ์

คุณต้องปฏิบัติตามหลักเกณฑ์ต่อไปนี้เพื่อให้ Structured Data ของฟอรัมการสนทนามีสิทธิ์ใช้ใน Google Search

หลักเกณฑ์เนื้อหา

  • ใช้มาร์กอัป DiscussionForumPosting เพื่ออธิบายโพสต์ที่ผู้ใช้สร้างขึ้นในฟอรัมของเว็บไซต์เท่านั้น อย่าใช้มาร์กอัปนี้กับเนื้อหาที่เขียนโดยผู้เผยแพร่เว็บไซต์หรือตัวแทนของผู้เผยแพร่เป็นหลัก
  • แม้ว่าเราจะสนับสนุนมาร์กอัปประเภทอื่นๆ ที่ถูกต้อง (Article, SocialMediaPosting, VideoObject) ซึ่งสามารถใช้มาร์กอัปที่คล้ายกันมากๆ กับความคิดเห็น ข้อมูลผู้เขียน และสถิติการโต้ตอบ แต่มาร์กอัปดังกล่าวไม่ควรใช้ DiscussionForumPosting โดยมีตัวอย่างดังนี้

    Use Case ที่ถูกต้อง:

    • หน้าฟอรัมชุมชนที่ผู้ใช้สามารถพูดคุยเกี่ยวกับเกมๆ หนึ่ง
    • แพลตฟอร์มฟอรัมทั่วไปที่โฮสต์เนื้อหาฟอรัมย่อยที่หลากหลาย

    Use Case ที่ไม่ถูกต้อง:

    • บทความหรือบล็อกที่เขียนโดยตัวแทนของเว็บไซต์โดยตรง (แม้จะมีความคิดเห็น)
    • รีวิวจากผู้ใช้เกี่ยวกับผลิตภัณฑ์
  • โปรดทราบว่าในกรณีการใช้งานส่วนใหญ่ของ Google หน้าถามและตอบถือเป็นกรณีพิเศษของหน้าฟอรัมการสนทนา หากโครงสร้างของเว็บไซต์ฟอรัมเป็นคำถามที่มีคำตอบเป็นหลัก เราขอแนะนำให้ใช้มาร์กอัปถามและตอบแทน หากโครงสร้างเป็นแบบกว้างๆ และปกติแล้วไม่ใช่เนื้อหาที่เป็นคำถามและคำตอบ การใช้ DiscussionForumPosting อาจเป็นตัวเลือกที่ดีกว่า
  • ตรวจสอบว่า DiscussionForumPosting แต่ละรายการมีข้อความทั้งหมดของโพสต์และตรวจสอบว่า Comment แต่ละรายการมีข้อความของการตอบกลับทั้งหมดหากพบในหน้านั้น

หลักเกณฑ์ทางเทคนิค

  • เราขอแนะนำให้ระบุมาร์กอัป DiscussionForumPosting ใน Microdata (หรือ RDFa) หากเป็นไปได้ ซึ่งต่างจากค่ากำหนดทั่วไปของ Structured Data ของเรา ทั้งนี้เพื่อป้องกันไม่ให้คุณต้องทำซ้ำบล็อกข้อความขนาดใหญ่ในมาร์กอัป อย่างไรก็ตาม นี่เป็นเพียงคำแนะนำและเรายังรองรับ JSON-LD อย่างเต็มรูปแบบอยู่

คำจำกัดความของประเภท Structured Data

ส่วนนี้จะอธิบายประเภท Structured Data ที่เกี่ยวข้องกับ DiscussionForumPosting

คุณต้องใส่พร็อพเพอร์ตี้ที่จำเป็นลงในเนื้อหาเพื่อให้มีสิทธิ์ใช้ใน Google Search คุณอาจใส่พร็อพเพอร์ตี้ที่แนะนำด้วยเพื่อให้ข้อมูลเพิ่มเติมเกี่ยวกับหน้าฟอรัมการสนทนา ซึ่งจะช่วยให้ประสบการณ์ของผู้ใช้ดียิ่งขึ้น

DiscussionForumPosting

ประเภท DiscussionForumPosting หมายถึงโพสต์ดั้งเดิมที่เป็นหัวข้อการสนทนา แม้ว่าโดยทั่วไปแล้วเนื้อหาประเภทนี้จะประกอบด้วยข้อความต่างๆ แต่ก็เป็นไปได้ที่จะมีการโพสต์ในฟอรัมที่มีเพียงเนื้อหาสื่อเท่านั้น

พร็อพเพอร์ตี้ที่จำเป็น

author

Person หรือ Organization

ข้อมูลเกี่ยวกับผู้เขียนโพสต์ โปรดทําตามแนวทางปฏิบัติแนะนําเกี่ยวกับมาร์กอัปผู้เขียนเพื่อช่วยให้ Google เข้าใจเกี่ยวกับผู้เขียนในฟีเจอร์ต่างๆ ได้ดีที่สุด

ใส่พร็อพเพอร์ตี้ที่เป็นประโยชน์สำหรับผู้เขียนให้มากที่สุด โดยใช้พร็อพเพอร์ตี้ที่รองรับจาก Structured Data สำหรับบทความและหน้าโปรไฟล์เป็นแนวทาง

author.name

Text

ชื่อผู้เขียนโพสต์

datePublished

DateTime

วันที่และเวลาสร้างโพสต์ในรูปแบบ ISO 8601

text หรือ image หรือ video ก็ได้

ในการแสดงเนื้อหาของโพสต์ คุณต้องมีหนึ่งในพร็อพเพอร์ตี้ต่อไปนี้รวมอยู่ด้วย

แต่ไม่จำเป็นต้องดำเนินการนี้หากคุณแสดงโพสต์ในหน้าอื่น (ที่มี url ภายนอก) เช่น ในหน้าต่อๆ ไปของฟอรัมหรือหน้าหมวดหมู่ฟอรัม

พร็อพเพอร์ตี้ที่แนะนำ

author.url

URL

ลิงก์ไปยังหน้าเว็บที่ระบุผู้เขียนโพสต์ได้อย่างไม่ซ้ำกัน ซึ่งโดยมากมักเป็นหน้าโปรไฟล์ของฟอรัม เราขอแนะนำให้มาร์กอัปหน้าดังกล่าวโดยใช้ Structured Data สำหรับหน้าโปรไฟล์

comment

Comment

ความคิดเห็นหรือการตอบกลับโพสต์ (หากมี) มาร์กอัปความคิดเห็นตามลำดับที่ปรากฏในหน้า

creativeWorkStatus

Text

หากโพสต์ถูกลบไปแล้ว แต่ยังคงบริบทหรือชุดข้อความไว้ ให้ตั้งค่าพร็อพเพอร์ตี้นี้เป็น Deleted

dateModified

DateTime

วันที่และเวลาที่แก้ไขโพสต์ในรูปแบบ ISO 8601 (หากมี) หากไม่มีการเปลี่ยนแปลงเกิดขึ้น คุณก็ไม่จำเป็นต้องทำซ้ำวันที่เผยแพร่

headline

Text

ชื่อโพสต์ หากไม่มีชื่อแยกต่างหาก อย่าทำซ้ำหรือตัดข้อความออกจากบรรทัดแรก

image

ImageObject หรือ URL

รูปภาพในหน้าภายในโพสต์ (หากมี) หากไม่มีรูปภาพ ก็ไม่ต้องใส่รูปภาพที่เป็นค่าเริ่มต้น ไอคอน หรือตัวยึดตำแหน่งในฟิลด์นี้

interactionStatistic

InteractionCounter

สถิติของผู้ใช้ที่มีผลกับโพสต์หลัก (หากมี)

Google รองรับ interactionTypes ต่อไปนี้

isPartOf

CreativeWork หรือ URL

แหล่งที่มาหลักของโพสต์หากโพสต์เกิดขึ้นในส่วนที่เจาะจงของเว็บไซต์โดยรวม (หากมี) เช่น ฟอรัมย่อยหรือกลุ่มภายในเว็บไซต์ขนาดใหญ่ หากใช้ CreativeWork (เช่น WebPage) ให้ใช้พร็อพเพอร์ตี้ URL เพื่อระบุ URL ของโพสต์

sharedContent

CreativeWork

เนื้อหาหลักที่แชร์ในโพสต์ (หากมี) วิธีที่นิยมใช้กันมากที่สุดคือการแชร์ WebPages (พร้อม URL) เป็นการอภิปรายตามหัวข้อ แต่คุณใช้รูปภาพหรือวิดีโอกับพร็อพเพอร์ตี้นี้ได้เช่นกัน โดยเฉพาะในกรณีที่เป็นเนื้อหาหลักของความคิดเห็นนั้น

ตัวอย่างวิธีเพิ่มลิงก์ที่แชร์ในโพสต์

  ...
  "sharedContent": { "@type": "WebPage", url: "https://example.com/external-url" }
  ...
text

Text

ข้อความในโพสต์ (หากมี) กรณีนี้พบได้บ่อยมาก แต่ในบางกรณีอาจถูกละเว้นได้หากในโพสต์มีสื่ออื่นๆ

url

URL

Canonical URL ของการสนทนา ในชุดข้อความที่มีหลายหน้า ให้ตั้งค่าพร็อพเพอร์ตี้นี้เป็น URL ของหน้าแรก สำหรับการสนทนารายการเดียว ซึ่งมักจะเป็น URL ปัจจุบัน

video

VideoObject

วิดีโอในหน้าภายในโพสต์ (หากมี)

Comment

ประเภท Comment หมายถึงความคิดเห็นใน CreativeWork ต้นฉบับ ในกรณีนี้คือ DiscussionForumPosting โดยมีพร็อพเพอร์ตี้หลายรายการเดียวกันพร้อมกับหลักเกณฑ์สำหรับ DiscussionForumPosting

พร็อพเพอร์ตี้ที่จำเป็น

author

Person หรือ Organization

ข้อมูลเกี่ยวกับผู้เขียนความคิดเห็น โปรดทําตามแนวทางปฏิบัติแนะนําเกี่ยวกับมาร์กอัปผู้เขียนเพื่อช่วยให้ Google เข้าใจเกี่ยวกับผู้เขียนในฟีเจอร์ต่างๆ ได้ดีที่สุด

ใส่พร็อพเพอร์ตี้ที่เป็นประโยชน์สำหรับผู้เขียนให้มากที่สุด โดยใช้พร็อพเพอร์ตี้ที่รองรับจาก Structured Data สำหรับบทความและหน้าโปรไฟล์เป็นแนวทาง

datePublished

DateTime

วันที่และเวลาที่มีการแสดงความคิดเห็นในรูปแบบ ISO 8601 หากไม่มีการเปลี่ยนแปลงเกิดขึ้น คุณก็ไม่จำเป็นต้องทำซ้ำวันที่เผยแพร่

text

Text

ข้อความหลักของความคิดเห็น โดยหลักการแล้ว ฟิลด์นี้จะตรงกับข้อความที่ปรากฏในหน้าของความคิดเห็น

พร็อพเพอร์ตี้ที่แนะนำ

author.url

URL

ลิงก์ไปยังหน้าเว็บที่ระบุผู้เขียนความคิดเห็นไว้อย่างไม่ซ้ำกัน ซึ่งโดยมากมักเป็นหน้าโปรไฟล์ของฟอรัม เราขอแนะนำให้มาร์กอัปหน้าดังกล่าวโดยใช้ Structured Data สำหรับหน้าโปรไฟล์

comment

Comment

ความคิดเห็นอื่นเกี่ยวกับหรือที่ตอบกลับความคิดเห็นดังกล่าว (หากมี) มาร์กอัปความคิดเห็นตามลำดับที่ปรากฏในหน้า

creativeWorkStatus

Text

หากความคิดเห็นถูกลบไปแล้ว แต่ยังคงบริบทหรือชุดข้อความไว้ ให้ตั้งค่าพร็อพเพอร์ตี้นี้เป็น Deleted (หากมี)

dateModified

DateTime

วันที่และเวลาที่แก้ไขความคิดเห็นครั้งล่าสุดในรูปแบบ ISO 8601 (หากมี)

image

ImageObject หรือ URL

รูปภาพในหน้าภายในความคิดเห็น (หากมี) หากไม่มีรูปภาพ ก็ไม่ต้องใส่รูปภาพที่เป็นค่าเริ่มต้น ไอคอน หรือตัวยึดตำแหน่งในฟิลด์นี้

interactionStatistic

InteractionCounter

สถิติของผู้ใช้ที่ใช้กับความคิดเห็น (หากมี)

Google รองรับ interactionTypes ต่อไปนี้

sharedContent

CreativeWork

เนื้อหาหลักที่แชร์ในความคิดเห็น (หากมี) วิธีที่นิยมใช้กันมากที่สุดคือการแชร์ WebPages (พร้อม URL) เป็นการอภิปรายตามหัวข้อ แต่คุณใช้รูปภาพหรือวิดีโอกับพร็อพเพอร์ตี้นี้ได้เช่นกัน โดยเฉพาะในกรณีที่เป็นเนื้อหาหลักของความคิดเห็นนั้น

ตัวอย่างวิธีเพิ่มลิงก์ที่แชร์ในความคิดเห็น

  ...
  "sharedContent": { "@type": "WebPage", url: "https://example.com/external-url" }
  ...

url

URL

URL ไปยังความคิดเห็นนี้ในหน้านี้ (หากมี) อย่ารวมพร็อพเพอร์ตี้นี้หากเป็นเพียง URL ของโพสต์ต้นฉบับ

video

VideoObject

วิดีโอในหน้าภายในความคิดเห็น (หากมี)

InteractionCounter

InteractionCounter จะอนุญาตให้เชื่อมโยงการนับจำนวนกับการโต้ตอบบางประเภท ซึ่งใช้ได้กับทั้ง 2 เนื้อหา (DiscussionForumPosting และComment) รวมถึงพร็อพเพอร์ตี้ author

พร็อพเพอร์ตี้ที่จำเป็น

userInteractionCount

Integer

จำนวนครั้งที่มีการโต้ตอบนี้

interactionType

ประเภทย่อยของ Action

สำหรับรายการประเภทย่อยของ Action ที่ถูกต้องสำหรับพร็อพเพอร์ตี้นี้ โปรดดูที่พร็อพเพอร์ตี้ที่ใช้ InteractionCounter (เช่น interactionStatistic)

ตรวจสอบผลการค้นหาที่เป็นสื่อสมบูรณ์ด้วย Search Console

Search Console เป็นเครื่องมือที่ช่วยในการตรวจสอบประสิทธิภาพของหน้าเว็บใน Google Search คุณไม่จำเป็นต้องลงชื่อสมัครใช้ Search Console เพื่อให้เนื้อหาได้แสดงในผลการค้นหาของ Google แต่การลงชื่อสมัครใช้จะช่วยให้คุณเข้าใจและปรับปรุงวิธีที่ Google เห็นเว็บไซต์ได้ เราขอแนะนำให้ไปดูข้อมูลใน Search Console ในกรณีต่อไปนี้

  1. หลังจากทำให้ข้อมูลที่มีโครงสร้างใช้งานได้เป็นครั้งแรก
  2. หลังจากเผยแพร่เทมเพลตใหม่หรืออัปเดตโค้ด
  3. วิเคราะห์การเข้าชมเป็นระยะ

หลังจากทำให้ข้อมูลที่มีโครงสร้างใช้งานได้เป็นครั้งแรก

หลังจากที่ Google ได้จัดทำดัชนีหน้าของคุณแล้ว ให้ตรวจหาปัญหาโดยใช้รายงานสถานะผลการค้นหาที่เป็นสื่อสมบูรณ์ที่เกี่ยวข้อง ตามหลักแล้ว รายการที่ถูกต้องควรจะมีจํานวนเพิ่มขึ้น และรายการที่ไม่ถูกต้องไม่ควรจะมีจำนวนเพิ่มขึ้น หากพบปัญหาในข้อมูลที่มีโครงสร้าง ให้ทำดังนี้

  1. แก้ไขรายการที่ไม่ถูกต้อง
  2. ตรวจสอบ URL ที่เผยแพร่เพื่อดูว่ายังมีปัญหาอยู่หรือไม่
  3. ขอการตรวจสอบโดยใช้รายงานสถานะ

หลังจากเผยแพร่เทมเพลตใหม่หรืออัปเดตโค้ด

เมื่อทําการเปลี่ยนแปลงที่สําคัญในเว็บไซต์ ให้คอยตรวจสอบการเพิ่มขึ้นของรายการที่ไม่ถูกต้องของ Structured Data
  • หากเห็นว่าจำนวนรายการที่ไม่ถูกต้องเพิ่มขึ้น อาจเป็นเพราะคุณเผยแพร่เทมเพลตใหม่ที่ใช้งานไม่ได้ หรือเว็บไซต์โต้ตอบกับเทมเพลตที่มีอยู่ด้วยวิธีใหม่และไม่ถูกต้อง
  • หากเห็นว่าจำนวนรายการที่ถูกต้องลดลง (ไม่สอดคล้องกับรายการที่ถูกต้องซึ่งเพิ่มขึ้น) บางทีอาจเป็นเพราะคุณไม่ได้ฝัง Structured Data ไว้ในหน้าอีกแล้ว ให้ใช้เครื่องมือตรวจสอบ URL เพื่อดูสาเหตุของปัญหา

วิเคราะห์การเข้าชมเป็นระยะ

วิเคราะห์การเข้าชมจาก Google Search โดยใช้รายงานประสิทธิภาพ ข้อมูลจะแสดงความถี่ที่หน้าปรากฏเป็นผลการค้นหาที่เป็นสื่อสมบูรณ์ใน Search ความถี่ที่ผู้ใช้คลิกหน้า และอันดับเฉลี่ยที่หน้าปรากฏในผลการค้นหา คุณจะใช้ Search Console API ดึงผลการค้นหาเหล่านี้โดยอัตโนมัติก็ได้เช่นกัน

การแก้ปัญหา

หากประสบปัญหาในการใช้หรือแก้ไขข้อบกพร่องของ Structured Data โปรดดูแหล่งข้อมูลต่อไปนี้ซึ่งอาจช่วยคุณได้