Trang chủ Onpage SEO Canonical url là gì? Tầm quan trọng của tối ưu Canonical Tag cho URL

Canonical url là gì? Tầm quan trọng của tối ưu Canonical Tag cho URL

bởi Nguyễn Thành Tiến
canonical url là gì?

Canonical URL là gì đã là một khái niệm quen thuộc với nhiều người làm SEO. Đây là một giải pháp hữu hiệu cho vấn đề duplicate content. Vậy sử dụng thẻ Canonical Tag như thế nào để website lên Top tốt? Hãy xem bài viết này nhé!

Sử dụng thẻ canonical trong SEO

Hướng dẫn cách sử dụng thẻ Canonical Tag

Canonical URL là gì?

Thẻ canonical (hay còn gọi là “rel canonical”) là một đoạn mã HTML nhằm khai báo URL gốc của các trang bị trùng lặp nội dung với công cụ tìm kiếm. Sử dụng Canonical Tag trong trường hợp nội dung duplicate hoặc giống nhau trên các URL khác nhau.

Tìm hiểu thẻ Canonical URL là gì?

Canonical URL là gì?

Việc sử dụng thẻ canonical giúp ngăn chặn các sự cố do nội dung giống hệt nhau hoặc “trùng lặp” xuất hiện trên nhiều URL. Nói một cách thực tế, thẻ canonical chỉ định cho các công cụ tìm kiếm biết phiên bản nào là phiên bản chính cần được index.

Cấu trúc chuẩn của một Canonical Tag

Các thẻ Canonical sử dụng cú pháp đơn giản, nhất quán và được đặt trong phần <head> của trang web. Ví dụ như

<link rel = “canonical” href = “https://moz.com/sample-page/” />

Một ví dụ về thẻ Canonical của Moz

Một ví dụ về thẻ Canonical của Moz

Đây là ý nghĩa của từng phần đoạn mã Canonical URL:

  • link rel = “canonical”:  Liên kết trong thẻ này là phiên bản chính (chuẩn) của trang này.
  • href = “https://example.com/sample-page/”:  Bạn có thể tìm thấy phiên bản chuẩn tại URL này.

Tại sao thẻ Canonical lại quan trọng trong SEO?

Google cực kỳ không thích duplicate content. Nó khiến cho Google khó lựa chọn:

  • Phiên bản nào của trang cần Index
  • Phiên bản nào để xếp hạng cho các truy vấn.
  • Liệu có nên hợp nhất “link equity” trên một trang hay chia nó thành nhiều phiên bản.

Website có nhiều trang bị duplicate content  làm  ảnh hưởng đến “ngân sách thu thập thông tin”. Google sẽ mất thời gian để thu thập thông tin ở các phiên bản duplicate thay vì khám phá nội dung quan trọng khác trên website.

Nội dung trùng lặp có thể ảnh hưởng đến ngân sách thu thập thông tin của Google

Nội dung trùng lặp có thể ảnh hưởng đến ngân sách thu thập thông tin của Google

Thẻ Canonical giúp bạn giải quyết tất cả những vấn đề này. Chúng có nhiệm vụ khai báo với Google nên Index và xếp hạng URL nào của trang web, cũng như nơi hợp nhất “link equity”.

Nếu bạn không chỉ định Canonical URL, Google sẽ tự xác định URL gốc nào là tốt nhất để Index.. Tuy nhiên, nếu dựa vào Google thì không phải là một ý tưởng tuyệt vời. Bởi Google có thể chọn một URL mà bạn không mong muốn để làm URL gốc.

Quy tắc cần nhớ khi sử dụng Canonical Tag

Có nhiều cách để triển khai Canonical Tag, nhưng bất kể bạn chọn cách nào thì cũng cần nắm chắc 5 quy tắc dưới đây.

Sử dụng đường dẫn tuyệt đối

John Mueller của Google đã nói rằng cách tốt nhất là không nên sử dụng các đường dẫn tương đối với phần tử liên kết rel = “canonical”.

Do đó, bạn nên sử dụng cấu trúc:
<link rel = “canonical” href = “ https://example.com/sample-page/ ” />

Thay cho cấu trúc này:
<link rel = “canonical” href = ” / sample-page / ” />

Dùng chữ viết thường cho URL

Google xem URL viết hoa và viết thường là hai phiên bản URL khác nhau. Do đó, bạn nên viết thường cho URL trên máy chủ cũng như cho cho các thẻ Canonical.

Sử dụng đúng phiên bản HTTPS hay HTTP

Nếu bạn chuyển sang SSL, hãy đảm bảo rằng bạn không khai báo bất kỳ URL nào không phải SSL (tức là HTTP) trong thẻ Canonical. Về mặt lý thuyết, nếu bạn làm như vậy có thể dẫn đến nhầm lẫn và kết quả không mong muốn.

Nếu bạn đang dùng HTTPS thì hãy đảm bảo sử dụng đúng phiên bản này:
<link rel = “canonical” href = “ https : //example.com/sample-page/” />

Nếu bạn không dùng HTTPS thì hãy dùng phiên bản này:
<link rel = “canonical” href = “ http : //example.com/sample-page/” />

Dùng Canonical Tag tự tham chiếu

John Mueller của Google nói rằng mặc dù không bắt buộc nhưng các thẻ Canonical tự tham chiếu vẫn được ưu tiên dùng.

John Mueller khuyên nên sử dụng thẻ Canonical tự tham chiếu vì nó giúp Google hiểu rõ bạn muốn Index trang nào và URL là gì khi được lập chỉ mục. Ngay cả khi bạn có một trang duy nhất hoặc có các biến thể khác nhau của URL thì vẫn có thể kéo trang đó lên.

Ví dụ, với các tham số ở cuối, có thể có chữ hoa, chữ thường hoặc www và không www. Tất cả những thứ này có thể được giải quyết bằng một thẻ Canonical tương đối.

Về cơ bản, thẻ Canonical trên một trang sẽ tự trỏ đến chính nó.

Ví dụ: nếu URL là https://example.com/sample-page,  thì Canonical tự tham chiếu trên trang đó sẽ là:
<link rel = “canonical” href = “https://example.com/sample-page” />

Hầu hết các CMS phổ biến hiện đại tự động thêm các URL tự tham chiếu. Nhưng nếu bạn sử dụng CMS tùy chỉnh thì sẽ cần phải có hardcode dành cho nhà phát triển web.

Mỗi trang chỉ sử dụng một Canonical Tag

Nếu trang có nhiều thẻ Canonical thì Google sẽ bỏ qua tất cả các thẻ Canonical đó. Nghĩa là có nhiều khai báo về rel = canonical, Google sẽ bỏ qua tất cả các gợi ý rel = canonical.

Hướng dẫn triển khai thẻ Canonical Tag.

Cài đặt Canonical Tag bằng thẻ HTML rel = “canonical”

Sử dụng thẻ rel = canonical là cách đơn giản và rõ ràng nhất để chỉ định một URL gốc.

Để thực hiện cài đặt bạn chỉ cần thêm mã sau vào phần <head> của bất kỳ trang trùng lặp nào:

<link rel = “canonical” href = “https://example.com/canonical-page/” />

Giả sử bạn đang sở hữu một website thương mại điện tử chuyên bán áo thun. Bạn muốn https://yourstore.com/tshirts/black-tshirts/  là URL gốc, ngay cả khi nội dung của trang đó có thể truy cập được qua các URL khác (ví dụ: https://yourstore.com/offers/black-tshirts/). Lúc đó, bạn chỉ cần thêm thẻ chuẩn sau vào bất kỳ trang trùng lặp nào:

<link rel = “canonical” href = “https://yourstore.com/tshirts/black-tshirts/” />

Nếu bạn đang sử dụng CMS thì không cần phải lo lắng về mã code của trang web.

Cài đặt thẻ Canonical trong WordPress

Cài đặt Yoast SEO và các thẻ Canonical tự tham chiếu sẽ được thêm tự động. Để tùy chỉnh các phần cài đặt, hãy sử dụng phần “Advanced” trên mỗi bài đăng hoặc mỗi trang.

Cài đặt Canonical Tag trong Wrodpress

Cài đặt Canonical Tag trong Wrodpress

>>Xem thêm: Hướng dẫn cài đặt và sử dụng Plugin Yoast SEO đơn giản

Cài đặt thẻ Canonical trong Shopify

Shopify thêm các Canonical URL tự tham chiếu cho các sản phẩm và bài đăng trên blog theo mặc định. Để đặt các Canonical URL tùy chỉnh, bạn cần phải chỉnh sửa trực tiếp các tệp mẫu (.liquid).

Cài đặt thẻ Canonical trong Squarespace

Squarespace cũng thêm các Canonical URL tự tham chiếu theo mặc định. Tuy nhiên, như trường hợp của Shopify, bạn cần phải chỉnh sửa mã trực tiếp nếu muốn thêm Canonical URL tùy chỉnh.

Cài đặt Canonical Tag trong tiêu đề HTTP

Đối với các tài liệu như PDF, không có cách nào để đặt các thẻ Canonical trong tiêu đề trang vì không có phần trang <head>. Trong những trường hợp như vậy, bạn sẽ cần sử dụng tiêu đề HTTP để đặt chuẩn. Bạn cũng có thể sử dụng Canonical trong tiêu đề HTTP trên các trang web chuẩn.

Ví dụ bạn tạo một phiên bản PDF của bài đăng blog này và lưu trữ nó trong thư mục con blog của (example.com/blog/*). Cấu trúc dòng tiêu đề HTTP trong file PDF như sau:

HTTP / 1.1 200 OK
Nội dung-Loại: ứng dụng / pdf
Liên kết: <https://ahrefs.com/blog/canonical-tags/>; rel = “canonical”

Cài đặt Canonical Tag trong sitemap

Bạn chỉ nên liệt kê các URL chuẩn vào sitemap. Đó là bởi vì Google xem các trang được liệt kê trong sitemap là các trang chuẩn được đề xuất.

Tuy nhiên, Google không phải lúc nào cũng chọn URL trong sitemap làm chuẩn.

Google nói rằng chúng tôi không đảm bảo rằng sẽ coi các URL trong sitemap là chuẩn. Nhưng đó là một cách đơn giản để xác định các trang chuẩn cho một trang web lớn. Sitemap là một cách hữu ích để cho Google biết những trang nào bạn coi là quan trọng nhất trên website của mình.

>>Tìm hiểu thêm: Sitemap là gì? Cách tạo sitemap cho website

Cài đặt Canonical Tag với Redirect 301

Sử dụng chuyển hướng 301 khi bạn muốn chuyển hướng lưu lượng truy cập khỏi URL trùng lặp và sang URL gốc.

Giả sử trang của bạn có các URL sau:

  • example.com
  • example.com/index.php
  • example.com/home/

Chọn một URL gốc và chuyển hướng các URL khác đến URL gốc.

Bạn cũng nên thực hiện tương tự đối với các phiên bản HTTPS hoặc HTTP và www hoặc không phải www trên website. Chọn một phiên bản chuẩn và chuyển hướng những phiên bản khác đến phiên bản đó.

Ví dụ: phiên bản chuẩn của example.com là URL HTTPS không phải www (https://example.com ). Tất cả các URL sau đều chuyển hướng đến đó:

  • http://example.com/
  • http://www.example.com/
  • https://www.example.com/

Cài đặt Canonical Tag với liên kết nội bộ

Cách bạn liên kết từ trang này sang trang khác trên toàn bộ trang web của mình là một cách Canonical URL.

Nhà phân tích xu hướng quản trị trang web của Google John Mueller đề cập đến các tín hiệu được sử dụng để xác định Canonical URL trong video này.

Cách Google thu thập Canonical Tag

Bạn càng nhất quán với tất cả các tín hiệu này, thì các công cụ tìm kiếm càng dễ dàng xác định Canonical URL ưa thích của bạn. Như John đã đề cập trong video, Google cũng ưu tiên HTTPS hơn URL HTTP và các URL đẹp hơn.

>>Tham khảo bài viết: Internal Link là gì? Liên kết nội bộ có ảnh hưởng đến thứ hạng SEO không?

Các lỗi cần tránh khi sử dụng thẻ rel=“canonical”

Canonicalization là một chủ đề hơi phức tạp. Như vậy, có rất nhiều hiểu lầm và quan niệm sai lầm về cách thức sử dụng Canonical cho đúng. Dưới đây là một số sai lầm phổ biến mà mọi người thường mắc phải khi cố gắng chuẩn hóa:

Chặn URL được chuẩn hóa qua robots.txt

Việc chặn một URL trong robots.txt sẽ ngăn Google thu thập dữ liệu, có nghĩa là Google không thể thấy bất kỳ thẻ Canonical nào trên trang đó. Điều này làm cho Google không thể chuyển bất kỳ “link equity” nào từ Non-Canonical sang Canonical.

Đặt URL chuẩn hóa thành “noindex”

Không nên kết hợp noindexrel = canonical với nhau bởi vì chúng là 2 yếu tố khác nhau. Google thường sẽ ưu tiên thẻ Canonical hơn thẻ “noindex”, như John Mueller đã nói ở đây. Nếu bạn muốn ngăn việc Index và Canonical một URL, hãy sử dụng Redirect 301. Nếu không, hãy sử dụng rel = canonical.

Đặt mã trạng thái HTTP 4XX cho Canonical URL

Việc đặt mã trạng thái HTTP 4XX cho một Canonical URL có tác dụng tương tự như việc sử dụng thẻ “noindex”. Google sẽ không thể nhìn thấy thẻ Canonical và chuyển “link equity” sang phiên bản chuẩn.

Canonicalizing tất cả các trang được phân trang thành trang gốc

Các trang được đánh số trang không nên triển khai Canonical URL đến trang được phân trang đầu tiên trong chuỗi. Thay vào đó, các tiêu chuẩn tự tham chiếu nên được sử dụng trên tất cả các trang được phân trang.

Như John Mueller của Google đã nêu trên Reddit, đây là cách sử dụng rel = canonical không đúng cách. Vì bài đăng này là về canonicalization, là sử dụng rel = canonical trên trang 2 trỏ đến trang 1. Trang 2 không tương đương với trang 1, vì vậy rel = canonical như vậy sẽ không chính xác.

Bạn cũng nên sử dụng thẻ rel = prev / next để phân trang . Những thứ này không còn được sử dụng bởi Google, nhưng Bing vẫn sử dụng .

Không sử dụng thẻ chuẩn với hreflang

Thẻ Hreflang được sử dụng để chỉ định nhắm mục tiêu theo ngôn ngữ và địa lý của một trang web. Google khuyên  rằng khi sử dụng hreflang, bạn nên “chỉ định một trang chính tắc cùng một ngôn ngữ hoặc ngôn ngữ thay thế tốt nhất nếu trang đó không cùng một ngôn ngữ.”

Có nhiều thẻ rel = canonical

Có nhiều thẻ rel = canonical sẽ khiến Google bỏ qua tất cả. Việc này xảy ra do các thẻ được chèn vào hệ thống tại các điểm khác nhau, chẳng hạn như CMS, chủ đề và (các) plugin. Đây là lý do tại sao nhiều plugin có tùy chọn ghi đè nhằm đảm bảo rằng chúng là nguồn duy nhất cho các thẻ Canonical.

Ngoài ra, đây có thể là vấn đề cài đặt Canonical bằng JavaScript. Nếu bạn không có Canonical URL nào được chỉ định trong phản hồi HTML và sau đó thêm thẻ rel = canonical với JavaScript thì nó sẽ được Google cho hiển thị trên trang.

Tuy nhiên, nếu bạn có một trang chuẩn được chỉ định trong HTML và hoán đổi phiên bản ưa thích bằng JavaScript thì sẽ khiến Google khó hiểu trang web của bạn.

Rel = canonical trong <body>

Rel = canonical chỉ nên xuất hiện trong phần <head> của bài đăng.  Thẻ Canonical trong phần <body> của trang sẽ bị bỏ qua.

Mặc dù mã nguồn của một trang có thể có thẻ rel = canonical, nhưng khi trang thực sự được tạo trong trình duyệt hoặc được hiển thị bởi công cụ tìm kiếm, nhiều thứ khác nhau như thẻ không được đóng, JavaScript được chèn hoặc <iframes> trong phần <head> có thể khiến <head> kết thúc sớm trong khi hiển thị.

Trong những trường hợp này, một thẻ Canonical có thể vô tình được đưa vào <body> của một trang được hiển thị mà nó sẽ không được chấp thuận

>>Bài viết tham khảo: SEO Onpage là gì? Vai trò của tối ưu Onpage SEO cho website

Những câu hỏi thường gặp về Canonical Tag

Tôi nên đặt Canonical Tag ở đâu?

Canonical Tag được đặt trong thẻ <head> của HTML trong website . Nó có tác dụng khai báo cho các công cụ tìm kiếm biết URL nào là phiên bản chuẩn của trang đang được hiển thị.

Làm cách nào để tạo một liên kết Canonical trong HTML?

Sử dụng thẻ rel = canonical là cách đơn giản và rõ ràng nhất để chỉ định một Canonical.

Thẻ canonical có ảnh hưởng đến SEO không?

Canonical Tag không những ảnh hưởng trực tiếp đến cách kết quả tìm kiếm hiển thị Cmà còn ảnh hưởng đến xếp hạng chung của một trang web do nhiều yếu tố, chẳng hạn như cấu trúc, trải nghiệm người dùng và luồng Xếp hạng trang.

Tất cả các trang web có nên có thẻ Canonical không?

Tất cả các trang (bao gồm cả trang chuẩn) phải chứa một thẻ Canonical để ngăn chặn bất kỳ sự trùng lặp nào có thể xảy ra. Ngay cả khi không có phiên bản nào khác thì trang đó vẫn phải có một Canonical Tag liên kết đến chính nó.

Kết luận

Trên đây là toàn bộ kiến thức về Canonical URL là gì và cạc triển khai Canonical Tag đúng cách. Việc sử dụng Canonical hợp lý và đúng cách sẽ là một điểm cộng khiến Google đánh giá cao trang web của bạn. Hy vọng bài viết này sẽ cung cấp cho bạn nhiều kiến thức hữu ích.

Bình luận về bài viết
Bạn ơi, bài viết hữu ích với bạn chứ?  
5/5 - (3 bình chọn)
1 bình luận
  • DL Võ Đông Lâm 2 năm trước

    Em chào anh Tiến.
    Em vừa mới đọc qua bài viết và có 2 câu hỏi mong anh Tiến giải đáp giúp em.

    1/ Em SEO từ khoá in nhanh với danh mục domain/in-nhanh/. Nhưng vì là danh mục nên sẽ có nhiều sản phẩm và sẽ có domain/in-nhanh/page-2.
    Vậy em có nên canonical về danh mục domain/in-nhanh/ hay không? Vì từ khoá SEO này đã bắt đúng URL cần SEO rồi thì việc có quá nhiều URL page-2, page-3, ... Cùng trỏ về em nghĩ là không tốt vì trong từng page đó có khá nhiều sản phẩm in cần SEO.
    2/ Em có 1 PBN đang có 1 page đứng TOP từ khoá A. Money site cũng có SEO từ khoá A đó nhưng không vô TOP được. Vậy khi em canonical bài viết trên PBN về money site thì có cải thiện thứ hạng không anh? 2 bài viết đều unique, tối ưu mật độ từ khoá khác nhau.

    Em mong nhận được câu trả lời từ anh. Em cám ơn Anh.

    Trả lời      
    • TT Nguyễn Thành Tiến 2 năm trước
      Quản trị viên

      @Võ Đông Lâm:
      1/ Ở phần này bạn nên canonical các trang URL page-2, page-3.... về URL gốc domain/in-nhanh/ nhé , canonical bản chất là khai báo cho google biết ? Đâu mới là URL gốc nên sẽ tốt cho SEO.

      2/ Bản chất là 2 website khác nhau đó bạn, PBN đã có trust sức mạnh nếu bạn muốn dồn lực qua Money site thì
      + copy luôn content của PBN cho moneysite
      + redirect page PBN qua moneysite
      => Auto ontop

      Trả lời      

Bài viết liên quan