如何透過Canonical標籤解決重複內容收錄問題?

佚名發表於2015-10-08

Canonical標籤 什麼是Canonical標籤 百度支援Canonical標籤 Canonical

Canonical標籤是Google、雅虎、微軟等搜尋引擎一起推出的一個標籤,它的主要作用是用來解決由於網址形式不同內容相同而造成的內容重複問題。這個標籤對搜尋引擎作用非常大,以前網站上的url不同會被搜尋引擎認為是重複內容,利用該標籤可以指定權威的某個連結,避免重複內容收錄。百度也已支援Canonical標籤。

為了避免重複內容的收錄,搜尋引擎會透過演算法對網頁內容及連結進行識別,對內容完全相同或者高度相似的網頁,會計算出一個系統認為規範的網頁結果建立索引並供使用者查詢。支援Canonical標籤以後,站長可以透過將元素和rel="canonical"屬性新增到該網頁非規範版本的部分,為搜尋引擎指定規範網頁。新增此連結和屬性可以告訴搜尋引擎:“在內容相同或高度相似的所有網頁中,該網頁為最規範最有價值的頁面,推薦將該網頁排在搜尋結果中靠前的位置。”

可透過在每個非規範版本的HTML網頁的部分中,新增一個rel="canonical"連結來進行指定規範網址。

例如,要指定指向網頁http://www.example.com/product.php?id=15786的規範連結,需要按以下形式建立<link>元素:

  • <linkrel="canonical"href="http://www.example.com/product.php?id=15786"/>

然後將上述連結複製到某網頁所有非規範網頁版本的<head>部分中(例如http://www.example.com/product.php?id=15786&active=1),即可完成設定。

rel="canonical"可與相對連結或絕對連結一起使用,但建議使用絕對連結,以最大程度地減少可能出現的混亂或問題。如果網站需要更換域名,且使用的伺服器不能建立伺服器端重定向網址的情況下,就可以使用rel="canonical"連結元素指定希望百度收錄域的網址。

wordpress中使用canonical的方法是,新增以下程式碼到你使用主題的 header.php 檔案的 head 區域:

  • <?php if(is_single()){?>
  • <link rel="canonical" href="<?php echo get_permalink($post->ID);?>" />
  • <?php } ?>

對於WordPress 2.9及以上的版本,應該都已經預設支援 canonical 標籤了。

Z-blog中使用canonical的修改方法是,編輯single模版檔案,在head上加入一下程式碼。

  • <link rel="canonical"href="<#article/url#>"/>

相關文章