Bỏ qua đến nội dung
Hotline: 0346 844 259 info@w3seo.com 46/1/56 Vườn Chuối, Phường 04, Quận 03, Thành phố Hồ Chí Minh
WH JOURNAL02.2021International SEO

Hreflang Là Gì? Cách Triển Khai Và Audit SEO Đa Ngôn Ngữ

Thời lượng3 phútCập nhật 06/08/2026
wordpress

Hreflang là annotation giúp Google nhận diện các URL là phiên bản ngôn ngữ hoặc khu vực của cùng một nội dung. Nó hỗ trợ lựa chọn locale phù hợp, nhưng không thay canonical, không bảo đảm index và không sửa được nội dung dịch kém chất lượng.

Chỉ nên triển khai hreflang khi website có URL riêng cho từng locale và các trang trong cùng cluster thực sự tương đương về intent. Nếu chưa khóa cấu trúc URL, localization và vận hành thị trường, cần xử lý các lớp đó trước.

Khi nào cần hreflang?

Tình huốngKhuyến nghị
vi và en cho cùng dịch vụDùng hreflang nếu hai URL cùng intent.
en-US, en-GB, en-AUDùng khi offer, spelling, giá hoặc policy khác theo market.
Một ngôn ngữ, một marketThường không cần.
Trang chọn quốc gia/ngôn ngữCân nhắc x-default.
Đổi nội dung theo IP trên cùng URLRủi ro cao; nên dùng URL riêng.

Việc chọn ccTLD, subdomain hay subdirectory thuộc cấu trúc URL quốc tế. Hreflang chỉ mô tả quan hệ giữa các localized alternatives sau khi URL owner đã được khóa.

Ba cách triển khai

Phương phápKhi phù hợp
HTML headCMS sinh tag trực tiếp cho website nhỏ hoặc vừa.
HTTP Link headerPDF hoặc tài nguyên không có HTML head.
XML sitemapWebsite lớn, nhiều locale, cần quản trị tập trung.

Không cần triển khai cả ba chỉ để “chắc chắn hơn”. Dùng một source of truth dễ duy trì và audit nhất. Nếu dùng nhiều phương pháp, dữ liệu phải đồng nhất.

Quy tắc cluster

  • Dùng URL tuyệt đối gồm protocol, host và path.
  • Mỗi URL tự khai báo chính nó.
  • Các URL có return links hai chiều.
  • Chỉ map các trang cùng intent.
  • Language code dùng ISO 639-1.
  • Region code dùng ISO 3166-1 Alpha 2 và đứng sau language.
  • x-default là fallback, không phải canonical mặc định.

Không dùng mã tự tạo như en-UK hoặc đảo thứ tự thành US-en. Với nhiều biến thể English, có thể cân nhắc một bản en làm catchall khi nội dung và vận hành phù hợp.

Hreflang và canonical

Với các locale cần index riêng, mỗi URL nên self-canonical và tất cả localized alternatives nằm trong cùng hreflang cluster. Không canonical bản en về bản vi chỉ vì nội dung tương tự; điều đó tạo tín hiệu mâu thuẫn với mục tiêu index riêng.

Tình huốngCách xử lý
vi và en đều cần indexMỗi trang self-canonical và hreflang qua lại.
URL parameter là duplicateCanonical về URL sạch cùng ngôn ngữ.
URL noindex, redirect hoặc 404Gỡ khỏi cluster hoặc sửa trạng thái.
Hai URL khác intentKhông đặt chung hreflang cluster.

Lỗi thường gặp

LỗiCách sửa
Missing return linkThêm liên kết hai chiều.
Mã locale không hợp lệĐối chiếu chuẩn ISO.
Trỏ tới redirect, noindex hoặc 404Trỏ thẳng URL 200, indexable và canonical.
Canonical khác ngôn ngữDùng canonical cùng locale hoặc owner phù hợp.
HTML và sitemap khác nhauDùng một source of truth.
Redirect cứng theo IPDùng URL riêng và selector crawlable.

Rủi ro CDN, WAF, cache và geo-routing được xử lý tại Hosting cho International SEO.

Quy trình audit hreflang

  1. Lập inventory URL theo cluster và locale.
  2. Xác minh status, indexability và canonical từng URL.
  3. Kiểm tra self-reference, return links và mã locale.
  4. So sánh HTML, HTTP header hoặc XML sitemap.
  5. Loại redirect, 404, noindex và URL khác intent.
  6. Kiểm tra rendered HTML qua nhiều host hoặc location.
  7. Re-crawl sau khi sửa và theo dõi Google-selected canonical.

Content và market cần chuẩn bị trước

Hreflang không nên được triển khai độc lập với nội dung và market operations. Trước rollout, cần biết locale nào có demand, URL nào sở hữu intent và phiên bản nào nên dịch, localize hoặc viết mới.

Đọc thêm nghiên cứu từ khóa quốc tế, kế hoạch nội dung đa quốc gia, nội dung đa ngôn ngữLocalizing Metadata.

Kết luận

Hreflang là lớp ánh xạ localized alternatives, không phải giải pháp cho mọi vấn đề International SEO. Hãy khóa URL owner, dùng một phương pháp triển khai, kiểm tra self-reference, return links, canonical và status; sau đó audit toàn cluster thay vì chỉ nhìn một URL.