ข้อกำหนดเมตาแท็ก 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) อย่างไรก็ตาม ข้อจำกัดนี้จะไม่มีผลในกรณีที่ผู้เผยแพร่เนื้อหาอนุญาตให้ใช้เนื้อหาแยกต่างหาก ตัวอย่างเช่น หากผู้เผยแพร่เนื้อหาให้เนื้อหาในรูปแบบข้อมูลที่มีโครงสร้างในหน้าเว็บ (เช่น เวอร์ชัน AMP และ Canonical ของบทความ) หรือมีข้อตกลงการอนุญาตให้ใช้สิทธิกับ Google การตั้งค่านี้จะไม่รบกวนการใช้งานที่ได้รับอนุญาตซึ่งมีความเจาะจงมากกว่า

    หากไม่ต้องการให้ Google ใช้ภาพขนาดย่อที่ใหญ่ขึ้นเมื่อหน้า AMP และเวอร์ชัน Canonical ของบทความแสดงในการค้นหาหรือ Discover ผู้เผยแพร่เนื้อหาควรระบุค่า max-image-preview เป็น standard หรือ none

    เช่น

    <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: [date/time]

    อย่าแสดงหน้านี้ในผลการค้นหาหลังจากวันที่/เวลาที่ระบุ ต้องระบุวันที่/เวลาในรูปแบบที่ใช้กันอย่างแพร่หลาย ซึ่งรวมถึงแต่ไม่จำกัดเฉพาะ RFC 822, RFC 850 และ ISO 8601 ระบบจะเพิกเฉยต่อคำสั่งนี้หากไม่มีการระบุ [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 ไม่ส่งผลต่อการใช้ข้อมูลที่มีโครงสร้างนั้น โดยมีข้อยกเว้นของ article.description และค่า description ของข้อมูลที่มีโครงสร้างที่ระบุไว้สำหรับงานสร้างสรรค์อื่นๆ หากต้องการระบุความยาวสูงสุดของตัวอย่างที่อิงตามค่า description เหล่านี้ ให้ใช้เมตาแท็ก robots max-snippet ตัวอย่างเช่น ข้อมูลที่มีโครงสร้าง recipe ในหน้าเว็บจะมีสิทธิ์รวมอยู่ในภาพหมุนสูตรอาหาร แม้ว่าจะมีการจำกัดตัวอย่างข้อความก็ตาม คุณจำกัดความยาวของตัวอย่างข้อความได้ด้วย max-snippet แต่ระบบจะไม่ใช้เมตาแท็ก 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 ที่มีคำสั่งเหล่านั้น