關於網站中的Canonical標記

最近用火狐打開我的網站,發現URL後面會出現一個圓圈,裡面有個C,不知大傢是否註意到,越來越多的網站(尤其是Wordpress搭建的網站),在Firefox中都會出現這個圖標。如圖:

裡面是個C字母,alt提示Current location matches the specifed canonical page。

打開某些網頁時,此標志又會變成藍色,alt會提示Go to the canonical page at /website-seo/#comment-01這樣的鏈接格式,如果有多個評論的話,則每條評論的鏈接都類似於上述格式,隻是commentID號有所不同,這些鏈接其實都是指向同一篇文章的。蜘蛛來爬時,便會依次爬行一遍,這篇文章下如有10條評論,則爬瞭10次相同的頁面文章,相當於做瞭多次重復的工作,嚴重影響瞭抓取的效率,及耗費瞭帶寬。

重復內容造成的結果必然是蜘蛛不願意來爬,不同的url指向同一個頁面,也會影響到該頁面的權重。

比如文章鏈接:/website-seo/和/?p=220兩個URL不一樣,但是內容一模一樣。重復內容容易造成搜索引擎的懲罰,所以作為網站管理員和SEO人,需要考慮避免這種重復內容對搜索引擎優化不友好的效果的產生。

現在我們可以在該頁面的header區加上一句:

來聲明,該頁面中此url為權威地址。相當於給所有指向此頁面的地址做瞭個301轉向,那麼搜索引擎讀到此標記時,便自然會以此地址為主。

註意的是,該標簽隻能作用於同一個域,不同域是不起作用的。也就是說如果文章被其它網站抄襲,也不會因為這個標簽而給你的原文章帶來權重。

另外,你如果想通過canonical把其它一些不重要的頁面指向某個重要的頁面,以此來達到增加某頁的權重,這個想法也是危險的,Google是可以檢測出來的。

再有就是如果你沒有加canonical標簽的話,搜索引擎們也會自已去判斷哪個地址是權重地址,隻是既然要與搜索引擎打交道,那我們為什麼不按照標準去表示一下友好的態度呢?

所幸的是,在我們使用的WP系統中已經有插件支持啦。在WP插件Platinum SEO和SEO All In One中,都有關於這個canonical的選項。隻要將對應的選項選上,則生成頁面的時候,會自動幫你產生這個標簽。在最新的WP2.9版本中已經支持,不在需要插件安裝就可以實現canonical標簽。下面我整理瞭代碼,需要的朋友直接復制就可以使用。

如果你的WP版本在2.9之前,需要通過插件(上面已經提到)或者手工 Hack 主題的 header.php 文件來使得博客支持。如在主題中加如下的代碼:

在 WordPress 2.9 發佈之後,WordPress 已經默認支持這一標簽瞭,我們無需做任何動作,主題就支持這一標簽。我們可以在 WordPress 的源文件 wp-includes/default-filters.php 看到如下的代碼:

add_action( ‘wp_head’, ‘rel_canonical’ );

因此 WordPress 是調用 rel_canonical() 這個函數來輸出 rel=canonical 標簽的 HTML 代碼。 如果你還想使用以前自己的方法,那麼你可以通過下面代碼屏蔽掉它:

remove_action( ‘wp_head’, ‘rel_canonical’ );

除瞭canonical鏈接標簽,對於Google來說,你也可以在重復內容的頁面的部分加入NOINDEX標簽,但是很顯然,對於很多具有重復內容的動態網址來說,這個標簽很難派上用場。對於Yahoo,你甚至還可以通過Robots-nocontent語法來告訴Yahoo搜索引擎機器人哪些內容是最有用最新鮮的。除此之外,英文雅虎站長工具Yahoo Site Explorer還具有動態網址參數管理功能,不妨也可以登錄上去設置一下,以幫助Yahoo搜索引擎更好地識別網站上是重復內容。

本文由站長供稿!轉載請註明出處,謝謝合作!