วิธีติดตั้ง Hreflang ให้เว็บหลายภาษาติด Google ครบ 3 วิธี (ฉบับ 2026)

ติดตั้ง hreflang โดยทำแผนผัง URL หลายภาษาให้เป็นหน้า “เทียบเท่ากัน”, ตั้ง canonical เป็น self บนทุกภาษา, ใส่ลิงก์ rel="alternate" hreflang ครบทุกคู่รวม x-default (ผ่าน HTML, HTTP header หรือ XML Sitemap), รักษารูปแบบโค้ด BCP-47 ให้ถูก และทดสอบด้วย Search Console/ตรวจซอร์ส
Hreflang คือแท็กที่บอก Google ว่าหน้าไหนเป็นของภาษา/ประเทศอะไร ช่วยให้ผู้ใช้แต่ละประเทศเห็นเวอร์ชันที่ถูกต้อง ติดตั้งได้ 3 วิธี: HTML head, XML Sitemap หรือ HTTP header โดยต้องใส่โค้ดสองทาง (return tag) และมี x-default เสมอ ถ้าทำผิด Google จะเลือกหน้าผิดภาษาไปแสดง เสียทั้งอันดับและ conversion
Hreflang คือแท็กที่บอก Google ว่าหน้านี้มีเวอร์ชันภาษาหรือภูมิภาคใดบ้าง ติดตั้งได้ 3 วิธีคือ HTML head, HTTP header และ XML Sitemap หัวใจคือต้องใส่ลิงก์ตอบกลับ (return link) ครบทุกคู่ ตั้ง canonical แบบ self ทุกหน้า ใช้รหัส BCP-47 ให้ถูก และเพิ่ม x-default เป็นหน้า fallback แล้วทดสอบใน Search Console ก่อนปล่อยจริง
คู่มือ Hreflang Implementation สำหรับ SEO (อัปเดต 2025)
เป้าหมาย บอกเสิร์ชเอนจินว่า “หน้านี้มีเวอร์ชันภาษา/ภูมิภาคอะไรบ้าง” เพื่อลดเนื้อหาซ้ำข้ามประเทศและเสิร์ฟผลลัพธ์ตรงภาษาให้ผู้ใช้ ผลลัพธ์ที่ดีย่อมส่งต่อไปถึง CTR/Conversion ในตลาดเป้าหมาย
Hreflang ทำงานยังไง ทำไมเว็บหลายภาษาต้องมี
เวลาเว็บคุณมีหน้าเดียวกันหลายภาษา เช่นหน้าบริการภาษาไทยกับภาษาอังกฤษ Google จะเจอเนื้อหาที่คล้ายกันสองหน้า แล้วต้องเดาว่าจะเสิร์ฟหน้าไหนให้ใคร ถ้าเดาผิด คนไทยอาจเจอหน้าอังกฤษโผล่ในผลค้นหา ทำให้คนกดออกเร็วและ Bounce Rate พุ่ง hreflang คือสัญญาณที่บอกตรงๆ ว่า "ผู้ใช้ภาษานี้ จากประเทศนี้ ให้เสิร์ฟหน้านี้" Google จึงไม่ต้องเดา
ในทางปฏิบัติ ผมเจอบ่อยว่าเว็บที่ทำหลายภาษาแต่ไม่ใส่ hreflang มักโดน Google รวมหน้าภาษาต่างกันเป็น duplicate แล้วเลือกแสดงหน้าเดียว อีกภาษาที่เหลือแทบไม่ติดอันดับเลย พอแก้ให้ครบทุกคู่ อันดับของแต่ละภาษาจะเริ่มแยกกันชัดขึ้นภายในไม่กี่สัปดาห์หลังจาก Google เก็บข้อมูลใหม่
เลือกรูปแบบการติดตั้ง (เลือกได้ 1 หรือผสม)
| วิธี | ติดตั้งที่ไหน | จุดเด่น/ข้อควรระวัง | เหมาะเมื่อ |
|---|---|---|---|
HTML <link rel="alternate" hreflang="…" /> |
<head> ของแต่ละหน้า | เข้าใจง่าย, ผูกกับแต่ละเพจโดยตรง; ต้องใส่ “ลิงก์ตอบกลับ” ให้ครบทุกคู่ | เว็บขนาดเล็ก–กลาง หรือคุมเทมเพลตได้ |
| HTTP header | Response header ของไฟล์ non-HTML (PDF ฯลฯ) | ใช้กับไฟล์มีเดีย; ต้องมั่นใจว่าคอนฟิกเซิร์ฟเวอร์ถูกต้อง | เอกสาร/ไฟล์ดาวน์โหลดที่มีหลายภาษา |
| XML Sitemap (xhtml:link) | Sitemap หลัก | รวมศูนย์, ขยายง่ายสำหรับเว็บใหญ่; ต้องรักษาความถูกต้องของคู่ลิงก์ | เว็บขนาดใหญ่/หลายภูมิภาค หรือมีระบบสร้าง Sitemap |
เกณฑ์ง่ายๆ ที่ผมใช้แนะนำลูกค้า: ถ้าเว็บต่ำกว่า 50 หน้า และคุมเทมเพลต head ได้เอง ให้ใช้ HTML ก่อน เพราะตรวจสอบด้วยตาง่ายสุด แต่ถ้าเว็บมีหลายร้อยหน้าหรือเพิ่มภาษาบ่อย ให้ย้ายไปทำใน XML Sitemap จะคุมความถูกต้องได้นิ่งกว่า เพราะแก้ที่เดียวจบ ไม่ต้องไล่แก้ทุกหน้า ส่วน HTTP header เก็บไว้ใช้เฉพาะไฟล์ที่ไม่ใช่ HTML อย่าง PDF คู่มือหลายภาษา
ตัวอย่างโครง URL และการแมปภาษา
| ภาษา/ภูมิภาค | โครง URL (ตัวอย่าง) | ค่า hreflang | Canonical ของหน้านั้น | หมายเหตุ |
|---|---|---|---|---|
| ไทย | https://example.com/th/บริการ | th | self → https://example.com/th/บริการ | ใช้รหัสภาษาเดียว (ไม่ต้องประเทศ ถ้าไม่จำเป็น) |
| EN (สากล) | https://example.com/en/service | en | self → https://example.com/en/service | ใช้เป็นคอนเทนต์อังกฤษกลาง (ไม่เจาะภูมิภาค) |
| EN–US | https://example.com/en-us/service | en-US | self → https://example.com/en-us/service | ระบุภาษา+ประเทศ ด้วย BCP-47 |
| EN–GB | https://example.com/en-gb/service | en-GB | self → https://example.com/en-gb/service | สะกด/สกุลเงินต่างจาก US |
| Fallback | https://example.com/ | x-default | self → https://example.com/ | หน้ายืนพื้น/ตัวเลือกภาษา/โฮมหลัก |
จุดที่คนพลาดกันเยอะคือสับสนระหว่าง "ภาษา" กับ "ประเทศ" รหัส hreflang ใช้ภาษาก่อน-ประเทศทีหลัง เช่น en-GB หมายถึงภาษาอังกฤษสำหรับคนอังกฤษ ไม่ใช่ GB-en และถ้าคุณมีแค่ภาษาเดียวยังไม่เจาะภูมิภาค ก็ใส่แค่รหัสภาษา เช่น th หรือ en พอ ไม่ต้องดันใส่ประเทศให้ซับซ้อนเกินจำเป็น
โค้ดตัวอย่าง (HTML / Sitemap / HTTP header)
1) HTML <head>
<link rel="alternate" href="https://example.com/th/บริการ" hreflang="th" />
<link rel="alternate" href="https://example.com/en/service" hreflang="en" />
<link rel="alternate" href="https://example.com/en-us/service" hreflang="en-US" />
<link rel="alternate" href="https://example.com/en-gb/service" hreflang="en-GB" />
<link rel="alternate" href="https://example.com/" hreflang="x-default" />
สังเกตว่าทุกหน้าในชุดนี้ต้องมีบล็อกลิงก์ชุดเดียวกันนี้ครบทั้งหมด หน้า /th/บริการ ก็ต้องลิสต์ทั้งห้าบรรทัดนี้เหมือนกับหน้า /en/service นี่คือสิ่งที่เรียกว่า return link ที่ครบสองทาง ถ้าหน้าใดหน้าหนึ่งใส่ไม่ครบ Google จะทิ้งทั้งคลัสเตอร์ทันที
2) XML Sitemap (รองรับ xhtml:link)
<url xmlns:xhtml="http://www.w3.org/1999/xhtml">
<loc>https://example.com/en/service</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/service"/>
<xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/en-us/service"/>
<xhtml:link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/service"/>
<xhtml:link rel="alternate" hreflang="th" href="https://example.com/th/บริการ"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/"/>
</url>
3) HTTP header (สำหรับไฟล์)
Link: <https://example.com/en/file.pdf>; rel="alternate"; hreflang="en"
Link: <https://example.com/th/ไฟล์.pdf>; rel="alternate"; hreflang="th"
Link: <https://example.com/>; rel="alternate"; hreflang="x-default"
ขั้นตอนติดตั้งทีละสเต็ป (5 ขั้น)
เวลาทำจริงผมแบ่งงานเป็น 5 ขั้นตอนที่ตรวจได้เป็นข้อๆ จะลดความผิดพลาดได้มาก
- ทำแผนผังคู่ภาษา ลิสต์ทุกหน้าออกมาว่าหน้าไหนมีกี่ภาษา และ URL ของแต่ละภาษาคืออะไร ให้ครบก่อนเริ่มเขียนโค้ด
- ตั้ง canonical แบบ self ทุกหน้า หน้าไทยชี้ canonical กลับหาตัวเอง หน้าอังกฤษก็ชี้กลับหาตัวเอง อย่าชี้รวมไปหน้าหลักภาษาเดียว
- ใส่ hreflang ครบทุกคู่ + x-default เลือกหนึ่งวิธี (HTML/Sitemap/header) แล้วใส่ให้ครบทุกหน้าในคลัสเตอร์
- ตรวจรหัส BCP-47 เช็กว่ารหัสภาษา/ประเทศสะกดถูก ไม่มีพิมพ์ผิดอย่าง
en-UK(ที่ถูกคือen-GB) - ทดสอบและมอนิเตอร์ ใช้ Search Console ส่วน International Targeting และเครื่องมือตรวจ hreflang ดูว่ามี error คู่ไหนหาย
เว็บที่ทำตามครบทั้ง 5 ขั้นนี้ ผมเห็นว่าผ่านการตรวจ hreflang validator ได้ตั้งแต่รอบแรกประมาณ 8 ใน 10 เคส ที่เหลือมักติดเรื่อง return link หายแค่บางหน้าเท่านั้น
ข้อผิดพลาดที่พบบ่อย → วิธีแก้
| ข้อผิดพลาด | อาการ | วิธีแก้ |
|---|---|---|
| ไม่มี “ลิงก์ตอบกลับ” (return links) | บางภาษาถูกเพิกเฉย | ทุกหน้าต้องอ้างกันแบบสองทาง ครบทุกคู่รวม x-default |
| canonical ผิด | ภาษาถูกรวบไปรวมที่หน้าเดียว | ตั้ง canonical เป็น self ของภาษานั้น ๆ เสมอ |
| ใช้รหัสประเทศอย่างเดียว (เช่น “TH”) | แท็กไม่ถูกต้อง | ใช้ BCP-47: ภาษา หรือ ภาษา–ประเทศ (เช่น th, en-GB) |
| ลิงก์ไปหน้าที่ “ไม่เทียบเท่า” | Hreflang ไม่ถูกนำไปใช้ | ทุกภาษา/ภูมิภาคต้องเป็นคอนเทนต์หน้าเดียวกัน |
| ผสมรูปแบบ (HTML + Sitemap) ไม่ครบคู่ | ข้อมูลขัดแย้งกัน | เลือกวิธีเดียว หรือให้ทั้งสองชุดตรงกันทุกคู่ |
หากต้องการตรวจสอบรายละเอียดเชิงเทคนิคเพิ่มเติม ผมแนะนำให้อ้างอิงจากแนวทางของ Google ในเอกสาร Localized versions of your pages ซึ่งระบุกฎ return link และ x-default ไว้ชัดเจน เป็นแหล่งอ้างอิงที่อัปเดตล่าสุดตามนโยบายของ Google ปี 2025
ถ้าเว็บของคุณใช้ Webflow และอยากให้ระบบจัดการ hreflang กับโครงสร้างหลายภาษาให้ถูกตั้งแต่ต้น ทีมเรารับ ออกแบบและพัฒนาเว็บไซต์ Webflow ที่วาง localization และ technical SEO ให้ครบตั้งแต่วันแรก ไม่ต้องมาไล่แก้ทีหลัง
คำถามที่พบบ่อยเกี่ยวกับ Hreflang
Hreflang คืออะไร ทำไมเว็บหลายภาษาต้องใช้?
Hreflang คือแท็ก HTML ที่บอก Google ว่าหน้านี้มีเวอร์ชันภาษาอื่นอยู่ที่ไหน ถ้าไม่ใส่ Google อาจเสิร์ฟหน้าภาษาผิดให้ผู้ใช้ หรือมองว่าเป็น duplicate content แล้วกดอันดับทั้งสองเวอร์ชันลง เว็บที่ทำ hreflang ถูกต้องจะได้ CTR สูงขึ้นเพราะผู้ใช้เห็นผลลัพธ์ตรงภาษาตั้งแต่แรก
ควรติดตั้ง hreflang ด้วยวิธีไหนดี? HTML, HTTP header, หรือ XML Sitemap?
ขึ้นอยู่กับขนาดเว็บ ถ้าเว็บเล็กถึงกลาง ใส่ใน HTML head ของแต่ละหน้าจะเข้าใจง่ายและดูแลได้ เว็บใหญ่หลายร้อยหน้าขึ้นไป ใช้ XML Sitemap จะจัดการง่ายกว่า ส่วน HTTP header ใช้กับไฟล์ที่ไม่ใช่ HTML เช่น PDF เลือกวิธีเดียวแล้วทำให้ครบทุกคู่ภาษา อย่าผสมวิธีแล้วข้อมูลไม่ตรงกัน
x-default ใน hreflang คืออะไร จำเป็นต้องใส่ไหม?
x-default คือ fallback สำหรับผู้ใช้ที่ภาษา/ภูมิภาคไม่ตรงกับเวอร์ชันไหนเลย ปกติจะชี้ไปหน้า language selector หรือหน้าหลักภาษาอังกฤษ แนะนำให้ใส่เสมอ เพราะช่วยให้ Google จัดการกับ traffic ที่ไม่ตรง locale ได้ดีขึ้น ลดโอกาสที่ผู้ใช้จะเห็นหน้าภาษาผิด
ข้อผิดพลาด hreflang ที่เจอบ่อยที่สุดคืออะไร?
ข้อผิดพลาดที่พบบ่อยคือ ลืมใส่ return link หน้า A ชี้ไป B แต่ B ไม่ชี้กลับ A ทำให้ Google เพิกเฉยทั้งคู่ อีกเรื่องที่พังบ่อยพอกันคือการตั้ง canonical ผิด ทุกเวอร์ชันภาษาต้อง canonical ชี้ตัวเอง (self-referencing) ไม่ใช่ชี้ไปภาษาหลัก ตรวจได้ง่ายใน Google Search Console ส่วน International Targeting
เว็บใช้ Webflow สามารถทำ hreflang ได้ไหม?
ได้ Webflow รองรับ localization หลายภาษาในตัว ระบบจะสร้าง hreflang tag ให้อัตโนมัติตาม locale ที่ตั้งไว้ แต่ถ้าใช้ subdomain หรือ subfolder แยกเอง ต้องจัดการ hreflang เองผ่าน custom code ใน head หรือ XML Sitemap สิ่งสำคัญคือต้องตรวจว่า return link ครบทุกคู่ และ canonical ถูกต้อง
ข้อมูลนี้เป็นแนวทางทั่วไป ควรปรึกษาผู้เชี่ยวชาญสำหรับกรณีเฉพาะ
ตรวจทานความถูกต้องโดยทีม Vision X Brain ประสบการณ์กว่า 18 ปี
บทความที่เกี่ยวข้อง
- วิธีทำ SEO สำหรับมือใหม่: เริ่มต้นให้ติดอันดับใน Google
- Shopify Markets vs Multilingual Apps: เลือกอะไรดีสำหรับขายต่างประเทศ
- Keyword Cannibalization: ปัญหาที่ทำให้ SEO ร่วง + 5 วิธีแก้
- Negative SEO: วิธีรับมือและป้องกัน (เช็กลิสต์ 2025)
- เช็คลิสต์ SEO-Friendly URL Slug สำหรับเว็บไซต์
Recent Blog

เทียบ 4 วิธีเชื่อม Stripe กับ Webflow ทั้ง Payment Links, Webflow Ecommerce, custom code และเครื่องมือเสริม พร้อมขั้นตอนจริงและเช็กลิสต์ก่อนเปิดรับเงิน

เทียบค่าใช้จ่ายจริงของการสร้างเว็บ Shopify เอง vs จ้างมืออาชีพ พร้อมตารางต้นทุนแฝง เกณฑ์ตัดสินใจ และทางสายกลาง 3 แบบที่เสี่ยงต่ำสุด

จัดอันดับ 10 บริษัทรับทำ GEO และ AI Search ในไทย 2026 ด้วยเกณฑ์โปร่งใส พร้อมเช็กลิสต์ 5 ข้อก่อนเซ็นสัญญา และคำแนะนำสำหรับธุรกิจที่อยากเริ่มเอง





