如何通過Canonical標簽解決重復內容收錄問題?

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

為瞭避免重復內容的收錄,搜索引擎會通過算法對網頁內容及鏈接進行識別,對內容完全相同或者高度相似的網頁,會計算出一個系統認為規范的網頁結果建立索引並供用戶查詢。支持Canonical標簽以後,站長可以通過將元素和rel=”canonical”屬性添加到該網頁非規范版本的部分,為搜索引擎指定規范網頁。添加此鏈接和屬性可以告訴搜索引擎:在內容相同或高度相似的所有網頁中,該網頁為最規范最有價值的頁面,推薦將該網頁排在搜索結果中靠前的位置。

可通過在每個非規范版本的HTML網頁的部分中,添加一個rel=”canonical”鏈接來進行指定規范網址。

例如,要指定指向網頁/product.php?id=15786的規范鏈接,需要按以下形式創建<link>元素:

  • <linkrel=”canonical”href=”/product.php?id=15786″/>

然後將上述鏈接復制到某網頁所有非規范網頁版本的<head>部分中(例如/product.php?id=15786active=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#>”/>

延伸閱讀:

  • canonical 標簽介紹
  • 百度支持Canonical標簽 站長可指定規范網頁
  • 再談Canonical標簽:與301有何區別?