ข้อกำหนดเมตาแท็ก robots, data-nosnippet และ X-Robots-Tag

บทคัดย่อ

เอกสารนี้แสดงรายละเอียดเกี่ยวกับการใช้การตั้งค่าระดับหน้าเว็บและระดับข้อความในการปรับลักษณะที่ Google แสดงเนื้อหาในผลการค้นหา คุณระบุการตั้งค่าระดับหน้าเว็บได้โดยใส่เมตาแท็กไว้ในหน้า HTML หรือในส่วนหัว HTTP และระบุการตั้งค่าระดับข้อความได้ด้วยแอตทริบิวต์ data- nosnippet ในเอลิเมนต์ HTML ภายในหน้าเว็บ

การใช้เมตาแท็ก robots

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

<!DOCTYPE html>
<html><head>
<meta name="robots" content="noindex" />
(…)
</head>
<body>(…)</body>
</html>

เมตาแท็ก robots ในตัวอย่างข้างต้นบอกเครื่องมือค้นหาไม่ให้แสดงหน้าเว็บดังกล่าวในผลการค้นหา ค่าของแอตทริบิวต์ name (robots) ระบุว่าคำสั่งนี้มีผลกับโปรแกรมรวบรวมข้อมูลทั้งหมด หากต้องการกล่าวถึงโปรแกรมรวบรวมข้อมูลที่เจาะจง ให้ระบุชื่อของโปรแกรมรวบรวมข้อมูลที่จะกล่าวถึงแทนค่า robots ของแอตทริบิวต์ name โปรแกรมรวบรวมข้อมูลที่เจาะจงเรียกอีกอย่างว่า User-agent (โปรแกรมรวบรวมข้อมูลใช้ User-agent เพื่อขอหน้าเว็บ) โปรแกรมรวบรวมข้อมูลเว็บมาตรฐานของ Google มี User-agent ชื่อ Googlebot หากไม่ต้องการให้ Googlebot เพียงโปรแกรมเดียวรวบรวมข้อมูลหน้าเว็บ ให้อัปเดตแท็กตามนี้

<meta name="googlebot" content="noindex" />

แท็กนี้จะบอก Google ไม่ให้แสดงหน้านี้ในผลการค้นหาเว็บ ทั้งแอตทริบิวต์ name และ content ไม่คำนึงถึงตัวพิมพ์เล็กหรือใหญ่

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

<meta name="googlebot-news" content="noindex" />

หากต้องการระบุโปรแกรมรวบรวมข้อมูลจำนวนมากทีละโปรแกรม ให้ใช้เมตาแท็ก robots หลายรายการ ดังนี้

<meta name="googlebot" content="noindex">
<meta name="googlebot-news" content="nosnippet">

การใช้ส่วนหัว HTTP ของ X-Robots-Tag

คุณใช้ X-Robots-Tag เป็นเอลิเมนต์การตอบสนองของส่วนหัว HTTP สำหรับ URL หนึ่งๆ ได้ คำสั่งที่ใช้ในเมตาแท็ก robots ได้ก็ระบุเป็น X-Robots-Tag ได้เช่นกัน ต่อไปนี้คือตัวอย่างการตอบสนองของ HTTP ที่มี X-Robots-Tag ซึ่งห้ามไม่ให้โปรแกรมรวบรวมข้อมูลจัดทำดัชนีหน้าเว็บ

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noindex
(…)

คุณจะใส่ส่วนหัว X-Robots-Tag หลายรายการไว้รวมกันภายในการตอบสนองของ HTTP หรือระบุรายการคำสั่งที่คั่นด้วยจุลภาคก็ได้ ต่อไปนี้คือตัวอย่างการตอบสนองของส่วนหัว HTTP ที่มี noarchive X-Robots-Tag รวมอยู่กับ unavailable_after X-Robots-Tag

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noarchive
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST
(…)

X-Robots-Tag อาจระบุ User-agent ก่อนคำสั่ง เช่น คุณใช้ชุดส่วนหัว HTTP ของ X-Robots-Tag ต่อไปนี้เพื่ออนุญาตให้แสดงหน้าเว็บตามเงื่อนไขในผลการค้นหาของเครื่องมือค้นหาที่ต่างกันได้

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow
(…)

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

คำสั่งที่ถูกต้องสำหรับการจัดทำดัชนีและการแสดงผล

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

คำสั่ง

all
ไม่มีข้อจำกัดในการจัดทำดัชนีหรือแสดงผล คำสั่งนี้เป็นค่าเริ่มต้นและไม่มีผลใดๆ หากมีการระบุไว้อย่างชัดเจน
noindex
อย่าแสดงหน้านี้ในผลการค้นหา
nofollow
อย่าไปที่ลิงก์ในหน้านี้
none
เทียบเท่ากับ noindex, nofollow
noarchive
อย่าแสดงลิงก์ที่เก็บไว้ในผลการค้นหา
nosnippet
อย่าแสดงตัวอย่างข้อความหรือวิดีโอในผลการค้นหาสำหรับหน้านี้ ภาพขนาดย่อแบบนิ่ง (หากมี) อาจยังมองเห็นได้อยู่หากทำให้ผู้ใช้ได้รับประสบการณ์ใช้งานดีขึ้น คำสั่งนี้มีผลต่อผลการค้นหาทุกรูปแบบ (ใน Google ค้นเว็บ, Google รูปภาพ, Discover)
max-snippet:[number]

ใช้ตัวอย่างข้อความที่มีอักขระไม่เกิน [number] ตัวสำหรับผลการค้นหานี้ (โปรดทราบว่า URL อาจแสดงเป็นผลการค้นหาหลายรายการในหน้าผลการค้นหา) ข้อกำหนดนี้ไม่มีผลต่อการแสดงตัวอย่างรูปภาพหรือวิดีโอ แต่มีผลต่อผลการค้นหาทุกรูปแบบ (เช่น Google ค้นเว็บ, Google รูปภาพ, Discover, Assistant) อย่างไรก็ตาม ข้อจำกัดนี้จะไม่มีผลในกรณีที่ผู้เผยแพร่โฆษณาอนุญาตให้ใช้เนื้อหาแยกต่างหาก ตัวอย่างเช่น หากผู้เผยแพร่โฆษณาแสดงเนื้อหาในรูปแบบข้อมูลที่มีโครงสร้างในหน้าเว็บหรือมีข้อตกลงอนุญาตใช้สิทธิ์กับ Google การตั้งค่านี้จะไม่รบกวนการใช้งานที่ได้รับอนุญาตซึ่งมีความเจาะจงมากกว่า ระบบจะละเว้นคำสั่งนี้หากไม่มีการระบุ [number] ที่แยกวิเคราะห์ได้

ค่าพิเศษ

  • 0: จะไม่แสดงตัวอย่างข้อมูล เทียบเท่ากับ nosnippet
  • -1: ไม่จำกัดความยาวของตัวอย่างข้อมูล
  • ตัวอย่าง

    <meta name="robots" content="max-snippet:20">
    max-image-preview:[setting]

    กำหนดขนาดสูงสุดของตัวอย่างรูปภาพสำหรับหน้าเว็บนี้ในผลการค้นหา

    ค่า setting ที่ยอมรับ

  • none: ไม่แสดงตัวอย่างรูปภาพเลย
  • standard: อาจแสดงตัวอย่างรูปภาพเริ่มต้น
  • large: อาจแสดงตัวอย่างรูปภาพขนาดใหญ่ที่มีความกว้างสูงสุดเท่ากับวิวพอร์ต
  • ค่านี้มีผลต่อผลการค้นหาทุกรูปแบบ (เช่น Google ค้นเว็บ, Google รูปภาพ, Discover, Assistant) อย่างไรก็ตาม ข้อจำกัดนี้จะไม่มีผลในกรณีที่ผู้เผยแพร่โฆษณาอนุญาตให้ใช้เนื้อหาแยกต่างหาก ตัวอย่างเช่น หากผู้เผยแพร่โฆษณาให้เนื้อหาในรูปแบบข้อมูลที่มีโครงสร้างในหน้าเว็บหรือมีข้อตกลงอนุญาตใช้สิทธิ์กับ Google การตั้งค่านี้จะไม่รบกวนการใช้งานที่ได้รับอนุญาตซึ่งมีความเจาะจงมากกว่า

    ตัวอย่าง

    <meta name="robots" content="max-image-preview:standard">
    max-video-preview:[number]

    ใช้ตัวอย่างวิดีโอที่มีความยาวไม่เกิน [number] วินาทีสำหรับวิดีโอในหน้านี้ในผลการค้นหา

    ค่าอื่นๆ ที่รองรับมีดังนี้

  • 0: อย่างมากที่สุดอาจใช้ภาพนิ่งตามการตั้งค่า max-image-preview
  • -1: ไม่มีขีดจำกัด
  • ค่านี้มีผลต่อผลการค้นหาทุกรูปแบบ (ใน Google ค้นเว็บ, Google รูปภาพ, Google วิดีโอ, Discover, Assistant) ระบบจะละเว้นคำสั่งนี้หากไม่มีการระบุ [number] ที่แยกวิเคราะห์ได้

    ตัวอย่าง

    <meta name="robots" content="max-video-preview:-1">
    notranslate
    อย่าเสนอคำแปลของหน้านี้ในผลการค้นหา
    noimageindex
    อย่าจัดทำดัชนีรูปภาพที่อยู่ในหน้านี้
    unavailable_after: [RFC-850 date/time]

    อย่าแสดงหน้านี้ในผลการค้นหาหลังจากวันที่/เวลาที่ระบุ ต้องระบุวันที่/เวลาในรูปแบบ RFC 850 ระบบจะละเว้นคำสั่งนี้หากไม่มีการระบุ [date/time] ที่ถูกต้อง โดยค่าเริ่มต้น เนื้อหาไม่มีวันที่หมดอายุ

    ตัวอย่าง

    <meta name="robots" content="unavailable_after: Sunday, 01-Sep-24 01:00:00 PDT">

    การใช้คำสั่งแบบรวมสำหรับการจัดทำดัชนีและการแสดงผล

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

    <meta name="robots" content="noindex, nofollow">
    

    ต่อไปนี้คือตัวอย่างที่จำกัดความยาวของตัวอย่างข้อความไว้ที่ 20 อักขระและอนุญาตให้แสดงตัวอย่างรูปภาพขนาดใหญ่

    <meta name="robots" content="max-snippet:20, max-image-preview:large">
    

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

    <meta name="robots" content="nofollow">
    <meta name="googlebot" content="noindex">
    

    Googlebot จะเข้าใจว่าหน้าเว็บที่มีเมตาแท็กเหล่านี้มีคำสั่ง noindex, nofollow เมื่อรวบรวมข้อมูล

    การใช้แอตทริบิวต์ HTML "data-nosnippet"

    คุณกำหนดส่วนที่เป็นข้อความของหน้า HTML เพื่อไม่ให้ใช้เป็นตัวอย่างข้อมูลได้ ซึ่งทำได้ในระดับเอลิเมนต์ HTML ที่มีแอตทริบิวต์ HTML "data-nosnippet" ในเอลิเมนต์ span, div และ section ระบบถือว่า data-nosnippet เป็นแอตทริบิวต์บูลีนซึ่งใช้ได้ทั้งแบบมีค่าและไม่มีค่า ส่วน HTML ต้องเป็น HTML ที่ถูกต้องและมีการปิดแท็กที่เกี่ยวข้องทั้งหมดตามความเหมาะสมเพื่อให้เครื่องอ่านได้

    ตัวอย่าง

    <p>This text can be shown in a snippet
     <span data-nosnippet>and this part would not be shown</span>.</p>
    
    <div data-nosnippet>not in snippet</div>
    <div data-nosnippet="true">also not in snippet</div>
    
    <div data-nosnippet>some text</html>
    <!-- unclosed "div" will include all content afterwards -->
    
    <mytag data-nosnippet>some text</mytag>
    <!-- NOT VALID: not a span, div, or section -->
    

    โดยปกติแล้ว Google จะแสดงผลหน้าเว็บเพื่อจัดทำดัชนี แต่ไม่รับประกันการแสดงผล ดังนั้นจึงอาจมีการดึง data-nosnippet ทั้งก่อนและหลังการแสดงผล โปรดอย่าเพิ่มหรือลบแอตทริบิวต์ data-nosnippet ของโหนดที่มีอยู่ผ่าน JavaScript เพื่อหลีกเลี่ยงความไม่แน่นอนจากการแสดงผล เมื่อเพิ่มเอลิเมนต์ของ DOM ผ่าน JavaScript ให้ใส่แอตทริบิวต์ data-nosnippet ตามความจำเป็นเมื่อเริ่มเพิ่มเอลิเมนต์ใน DOM ของหน้าเว็บ หากมีการใช้เอลิเมนต์ที่กำหนดเอง ให้รวมหรือแสดงผลด้วยเอลิเมนต์ div, span, หรือ section หากคุณต้องการใช้ data- nosnippet

    การใช้ข้อมูลที่มีโครงสร้าง

    เมตาแท็ก robots ควบคุมปริมาณเนื้อหาที่ Google ดึงมาจากหน้าเว็บโดยอัตโนมัติเพื่อแสดงเป็นผลการค้นหา แต่ผู้เผยแพร่โฆษณาจำนวนมากยังใช้ข้อมูลที่มีโครงสร้าง schema.org เพื่อให้ข้อมูลที่เจาะจงใช้ในการแสดงการค้นหาได้ด้วย ข้อจำกัดของเมตาแท็ก robots ไม่ส่งผลต่อการใช้ข้อมูลที่มีโครงสร้างนั้น ในการจัดการการใช้ข้อมูลที่มีโครงสร้างสำหรับหน้าเว็บ เพียงแก้ไขประเภทข้อมูลที่มีโครงสร้างและค่าโดยการเพิ่มหรือนำข้อมูลออกเพื่อให้เหลือเฉพาะข้อมูลที่ต้องการให้แสดง และโปรดทราบว่าข้อมูลที่มีโครงสร้างจะใช้กับผลการค้นหาได้ต่อไปเมื่อมีการประกาศภายในเอลิเมนต์ data-nosnippet

    แนวทางการปรับใช้ X-Robots-Tag

    คุณเพิ่ม X-Robots-Tag ในการตอบสนอง HTTP ของเว็บไซต์ผ่านไฟล์การกำหนดค่าของซอฟต์แวร์สำหรับเว็บเซิร์ฟเวอร์ของเว็บไซต์ได้ เช่น ในเว็บเซิร์ฟเวอร์ที่ใช้ Apache คุณจะใช้ไฟล์ .htaccess และ httpd.conf ได้ ประโยชน์ของการใช้ X-Robots-Tag ที่มีการตอบสนองของ HTTP คือคุณระบุคำสั่งในการรวบรวมข้อมูลที่มีผลทั่วทั้งเว็บไซต์ได้ การรองรับนิพจน์ทั่วไปช่วยให้มีความยืดหยุ่นในระดับสูง

    เช่น หากต้องการเพิ่ม noindex, nofollow X-Robots-Tag ในการตอบสนองของ HTTP สำหรับไฟล์ .PDF ทั้งหมดทั่วทั้งเว็บไซต์ ให้เพิ่มข้อมูลโค้ดต่อไปนี้ในไฟล์ .htaccess หรือไฟล์ httpd.conf รากของเว็บไซต์ใน Apache หรือในไฟล์ .conf ของเว็บไซต์ใน NGINX

    Apache:

    <Files ~ "\.pdf$">
      Header set X-Robots-Tag "noindex, nofollow"
    </Files>
    

    NGINX:

    location ~* \.pdf$ {
      add_header X-Robots-Tag "noindex, nofollow";
    }
    

    ในกรณีที่ใช้เมตาแท็ก robots ใน HTML ไม่ได้ คุณใช้ X-Robots-Tag สำหรับไฟล์ที่ไม่ใช่ HTML เช่น ไฟล์ภาพได้ ต่อไปนี้คือตัวอย่างการเพิ่มคำสั่ง noindex X-Robots-Tag สำหรับไฟล์ภาพ (.png, .jpeg, .jpg, .gif) ทั่วทั้งเว็บไซต์

    Apache:

    <Files ~ "\.(png|jpe?g|gif)$">
      Header set X-Robots-Tag "noindex"
    </Files>
    

    NGINX:

    location ~* \.(png|jpe?g|gif)$ {
      add_header X-Robots-Tag "noindex";
    }
    

    การรวมการรวบรวมข้อมูลกับคำสั่งในการจัดทำดัชนี/การแสดงผล

    ระบบจะพบเมตาแท็ก robots และส่วนหัว HTTP ของ X-Robots-Tag เมื่อรวบรวมข้อมูล URL หากไม่มีการอนุญาตให้รวบรวมข้อมูลหน้าเว็บผ่านไฟล์ robots.txt ระบบจะไม่พบข้อมูลเกี่ยวกับคำสั่งในการจัดทำดัชนีหรือการแสดงผล แล้วก็จะละเว้นคำสั่งดังกล่าว หากต้องการให้ระบบทำตามคำสั่งในการจัดทำดัชนีหรือการแสดงผล คุณจะต้องอนุญาตให้มีการรวบรวมข้อมูล URL ที่มีคำสั่งเหล่านั้น