• Home
  • Blog
  • วิธีกำหนด Canonical Tag เพื่อแก้ปัญหา Duplicate Content

วิธีกำหนด Canonical Tag เพื่อแก้ปัญหา Duplicate Content

Son Content Mastery
Updated: Oct. 28, 2023


Canonicalization เป็นอีกหนึ่งส่วนสำคัญที่คนทำ SEO หรือเจ้าของเว็บไซต์จะละเลยไปไม่ได้  ซึ่งหลายคนอาจจะยังไม่รู้ตัวว่า บทความหรือคอนเทนต์ที่เราเขียนอยู่อาจเกิดปัญหา Duplicate Content อยู่ !! 

ดังนั้นมาดูกันครับว่า เราจะมีวิธีการสังเกตหรือตรวจสอบเนื้อหาที่ซ้ำกัน และวิธีการกำหนด Canonical Tag รวมไปถึงการทำ 301 Redirect ทำได้อย่างไร

Disclaimer: บทความนี้ค่อนข้าง technical ไปบ้างนิดนึง ดังนั้นเพื่อน ๆ ที่อ่านบทความนี้อาจจะไม่ได้เข้าใจ 100%  เข้าใจสักครึ่งหนึ่งก็โอเครแล้วครับ :) แต่ถ้าคุณเข้าใจหลักการแล้ว ทุกอย่างจะง่ายขึ้นครับ

Canonicalization คืออะไร

Canonicalization เป็นส่วนที่เกี่ยวข้องกับเนื้อหาที่ซ้ำกัน (Duplicate Content) จัดอยู่ในประเภทของ Technical SEO  ซึ่งปัญหานี้ทำให้ส่งผลกระทบต่อการทำ SEO  โดยสาเหตุมาจากหน้าเว็บของเรามีเนื้อหาที่คล้ายคลึงหรือเนื้อหาเดียวกันแต่สามารถเข้าถึงได้ผ่าน URL หลายเวอร์ชัน

ตัวอย่าง เช่น สมมติว่าเรากำลังเขียนบทความ "10 คาเฟ่ที่ดีที่สุดในกรุงเทพ ฯ" ก็จะได้ URL ประมาณนี้

https://www.example.com/blog/top-10-cafes-in-bangkok


แต่ที่จริงแล้ว ในเบื้องลึกเบื้องหลังเราอาจจะได้ URLs ตามด้านล่างนี้ครับ

https://www.example.com/blog/top-10-cafes-in-bangkok
http://www.example.com/blog/top-10-cafes-in-bangkok/
https://example.com/blog/top-10-cafes-in-bangkok example.com/blog/top-10-cafes-in-bangkok example.com/blog/top-10-cafes-in-bangkok/
https://www.example.com/blog/top-10-cafes-in-bangkok/index.html
https://www.example.com/blog/
top-10-cafes-in-bangkok

เห็นไหมครับว่า ถึงแม้จะเป็นบทความที่ถูกเขียนเพียงบทความเดียว แต่ในเบื้องหลังนั้นมันมี URLs หลายเวอร์ชันถูกสร้างขึ้นมา ทั้ง http, non-http, https, www, ฯลฯ สร้างความสับสนให้กับ Search Engine ได้เลย นำมาซึ่งปัญหาในการทำดัชนี (Indexing) และจัดอันดับ (Ranking) การค้นหา และประสิทธิภาพโดยรวมของ SEO

บทความแนะนำเพิ่มเติม: Search Engine ทำงานอย่างไรเพื่อจัดอันดับหน้าเว็บ 


สาเหตุหลักที่เกิด Duplicate Content 

อย่างที่ได้กล่าวไปในข้างต้นว่าเว็บไซต์ของเรานั้นมีโอกาสที่จะเกิดการซ้ำกันของเนื้อหาได้ ถ้าเราไม่ได้กำหนดแท็กเพื่อบอกเสิร์ชเอนจินว่า URL เวอร์ชันไหนคือ the best version ของหน้าเว็บเพจนั้นของเรา

นี่คือสาเหตุต่าง ๆ ที่พบบ่อย ที่ทำให้เกิด Duplicate Content 

  • HTTP & HTTPS: ก็คือสาเหตุที่พบได้บ่อยที่สุดเลยก็ว่าได้ โดยในเบื้องต้นแก้ได้ด้วยการกำหนดให้เนื้อหาทั้งหมดเข้าถึงผ่าน HTTPS เท่านั้นโดยกำหนด ref="canonical" ดังตัวอย่างโค้ดที่ได้กล่าวไปด้านบน (ซึ่งส่วนนี้เรียกว่าการทำ Self-referencing Canonical) และส่วนนี้จะรวมไปถึงการที่เว็บของเราเดิมเป็น http แล้วอัปเดตไปเป็น https ก็ทำให้เกิดปัญหาคอนเทนต์ซ้ำ (ก็ให้ทำ 301 Redirect ไปที่ https ครับ)
  • Cross-Domain Duplicates : บางเว็บไซต์อาจจะมีบทความหรือคอนเทนต์ที่เนื้อหาแบบเดียวกันแล้ว publish ไปหลาย ๆ ที่ ซึ่งอันนี้ทำให้เห็นปัญหาเนื้อหาซ้ำได้แบบชัดเจนเลยก็ว่าได้ (ตัวอย่างเว็บ medium.com จะมีฟีเจอร์ที่จัดการส่วนนี้ ที่ให้เราสามารถนำบทความต้นฉบับในเว็บเราไปโพสต์บนเว็บ Medium ได้ โดยไม่เกิดปัญหา Duplicate Content)

วิธีตรวจเช็คปัญหา Canonicalization 

วิธีการเช็คว่าเว็บของเราเกิดปํญหานี้อยู่หรือไม่ ก็สามารถเช็คได้ผ่าน Google Search Console ได้เลยครับ 

Google Search Console แสดงผลเนื้อหาที่ไม่ได้ถูก Index



แสดงหน้าที่เป็นปัญหา Canonicalization


แก้ได้ด้วย Canonical Tag, ทำ 301 Redirect & Noindex

  • Canonical Tag: ในส่วนของ HTML จะมีแท็กที่เรียกว่า "Canonical Tag" เพื่อให้เรากำหนดเวอร์ชันของ URL ที่ต้องการเป็น Canonical เวอร์ชันได้ โดยสามารถเพิ่มโค้ด rel="canonical" เข้าไปในส่วนของ <head> ได้เลย ซึ่งการทำแบบนี้เรียกว่า Self-referencing Canonical Tag
<head>
    <title>Top 5 Cafes in Bangkok You Should Visit | Cafe Review</title>
    ....
    <link rel="canonical" href="https://www.example.com/blog/top-5-cafes-in-bangkok">
    ...
</head>


แท็กนี้จะเป็นการบอกเสิร์ชเอนจินว่า

https://www.example.com/blog/top-10-cafes-in-bangkok

คือ best version ที่เราต้องการให้ Google เลือกไปทำ index นะ  (โดยปกติแล้วก็มักจะใช้ URL แบบที่มี https) และเป็น URL แบบเต็ม (Absulute URL)

ลองดูเว็บอื่น ๆ เทียบดูก็ได้ครับ เช่นเว็บ SEO ระดับโลกอย่าง Search Engine Journal


ตัวอย่างเว็บ Search Engine Journal

โค้ด

<link rel="canonical" href="https://www.searchenginejournal.com/" />


นอกจากวิธีด้านบนที่ว่ามานี้เรายังสามารถทำ URL 301 Redirect หรือไม่ว่าจะเป็น Noindex ได้เช่นกัน (แต่ต้องทำอย่างระมัดระวังหรือให้ผู้ที่มีความเชี่ยวชาญทำเท่านั้นครับ ไม่งั้นทำผิดพลาดอาจสร้างผลกระทบทางลบต่อเว็บไซต์ได้เลย 

Best Practices และคำแนะนำ

  • ไม่ควรใช้ Canonical Tag หลายครั้งในหน้าเดียว เพราะมันจะทำให้เสิร์ชเอนจินที่มาเก็บข้อมูลสับสนได้ ควรใช้แท็กเดียวและชี้ไปที่ลิงก์ ๆ เดียวเท่านั้น 
  • ไม่ใช้ร่วมกับ Noindex (คือเลือกเอาให้แน่อย่างใดอย่างหนึ่ง ถ้าจะทำ Noindex ก็ไม่ต้องใส่ Canonical Tag)
  • แนะนำว่าให้ใช้ URL แบบเต็มหรือ Absolute URL
  • การทำ 301 redirect เราจะไม่เห็น URL ต้นทางหรือหน้าเว็บเพจนั้นอีกต่อไปนะครับ เช่น mywebsite.com/page-a/ จะ redirect ไปที่ mywebsite.com/page-b/ เราจะเห็นเนื้อหาของหน้าเว็บของอันหลังคือเพจ mywebsite.com/page-b/ เท่านั้น แต่ถ้าทำ Canonical เราจะสามารถเข้าหน้าเว็บ my.../page-a/ ได้อยู่ ซึ่งอันนี้เราก้ต้องชั่งน้ำหนักส่วนนี้ให้ดีนะครับ


แล้วเราจะเพิ่มโค้ด Canonical Tag ตัวนี้เข้าไปในเว็บเราได้ยังไง ? 

อันนี้ก็ขึ้นอยู่กับเครื่องมือที่เราใช้ทำเว็บกันแล้วครับ ถ้าแบบเว็บที่เขียนโค้ดนั้นก็สามารถ manual โค้ดเข้าไปได้เลย แต่ถ้าเป็นเว็บที่สร้างแบบสำเร็จรูปหรือจำพวก web builders ต่าง ๆ เช่น WordPress, Wix, Weebly, etc ก็คิดว่าน่าจะมีปลั๊กอินที่รองรับส่วนนี้อยู่แล้ว

ข้อดีหลังจากแก้ปัญหา Canonicalization

  • เพิ่มประสิทธิภาพ SEO: ช่วยให้เสิร์ชเอนจินโฟกัสไปที่เนื้อหาหลัก ไปเก็บเกี่ยวข้อมูลใน URL ที่เราต้องการได้แบบเนื้อ ๆ เน้น ๆ 
  • รักษาค่าพลังลิงก์ (Link Equity): ทุก ๆ ลิงก์จะถูกชี้ไป URL เวอร์ชันที่ทำ Canonicalization ซึ่งสามารถคงไว้ซึ่งค่าพลังของลิงค์ไม่กระจายพลังออกไปหลาย ๆ ลิงก์ที่เนื้อหาซ้ำกัน

และอีกอย่าง Google Search Console จะไม่แสดงผลหรือรายงานปัญหานี้อีกต่อไป !! และมันจะไม่รกหูรกตาเราอีกครับ lol

สรุป

การแก้ปัญหา Canonicalization เป็นอีกส่วนที่จำเป็นของการทำ SEO ซึ่งช่วยให้เราหมดกังวลเกี่ยวกับปัญหา Duplicate Content ทั้งยังช่วยเพิ่มประสิทธิภาพการค้นหาของเว็บไซต์ของเราให้ดีต่อเสิร์ชเอนจินมากยิ่งขึ้น

วิธีแก้ปัญหา Dupliate Content ทำได้โดยการกำหนด Canonical Tag, ทำ URL 301 Redirect หรือแม้แต่ Noindex แท็ก (บางกรณีเท่านั้น) จะช่วยเสิร์ชเอนจินเลือก URL ที่ดีที่สุด หรือไม่ว่าจะเป็น URL ปลายทางที่เราต้องการ ในการนำไปจัดทำ index ต่อไป ซึ่งจะช่วยปรับปรุงให้ SEO Score ของเว็บเราดีขึ้นได้อย่างแน่นอนครับ

แต่ถ้าเพื่อน ๆ ต้องการเข้าใจการทำ SEO แบบทะลุปรุโปร่งในทุกมิติ โดยเฉพาะด้าน Technical SEO ซึ่งสกิลการทำเว็บด้วยการเขียนโค้ดเอง จะทำให้เรากลายเป็น Super SEO Specialist เลยก็ว่าได้ครับ โดยผมมี คลาสสอน Web SEO สำหรับนักทำ SEO เจ้าของธุรกิจ สอนแบบส่วนตัว สอนด้วยภาษาโค้ดดิ้งที่เข้าใจง่ายที่สุดอย่างภาษา Python + HTML (โดยผมไม่ได้มีเวลาเปิดสอนบ่อยนักและจะเลือกผู้เรียนที่มีความสนใจหรือตั้งใจอยากเรียนตรงนี้จริง ๆ ถ้าสนใจลอง inbox เข้ามาสอบถามหรือปรึกษากันดูก่อนได้ครับ)

Son Content Mastery
Son Content Mastery

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


อัพสกิล SEO ด่วน?

ลดระยะเวลาลองผิดลองถูกด้วยตัวเอง เรียน SEO พร้อมหลักการทำงานของเว็บ เข้าใจเบื้องลึกเบื้องหลังการทำงานของเว็บ พร้อมทั้งสามารถเข้าใจส่วนยาก ๆ อื่น ๆ เช่น Technical SEO ได้แบบไม่มีปัญหา คลาสออนไลน์แบบ private กับ Son contentmastery.io (หรืออบรมในองค์กรแบบ in-house ทางผมก็รับครับ) สามารถติดต่อ พูดคุย สอบถามหรือปรึกษากันก่อนได้ครับ