Canonical標(biāo)簽是Google、雅虎、微軟等搜索引擎一起推出的一個(gè)標(biāo)簽,它的主要作用是用來解決由于網(wǎng)址形式不同內(nèi)容相同而造成的內(nèi)容重復(fù)問題。這個(gè)標(biāo)簽對(duì)搜索引擎作用非常大,以前網(wǎng)站上的url不同會(huì)被搜索引擎認(rèn)為是重復(fù)內(nèi)容,利用該標(biāo)簽可以指定權(quán)威的某個(gè)鏈接,避免重復(fù)內(nèi)容收錄。百度也已支持Canonical標(biāo)簽。
為了避免重復(fù)內(nèi)容的收錄,搜索引擎會(huì)通過算法對(duì)網(wǎng)頁(yè)內(nèi)容及鏈接進(jìn)行識(shí)別,對(duì)內(nèi)容完全相同或者高度相似的網(wǎng)頁(yè),會(huì)計(jì)算出一個(gè)系統(tǒng)認(rèn)為規(guī)范的網(wǎng)頁(yè)結(jié)果建立索引并供用戶查詢。支持Canonical標(biāo)簽以后,站長(zhǎng)可以通過將元素和rel="canonical"屬性添加到該網(wǎng)頁(yè)非規(guī)范版本的部分,為搜索引擎指定規(guī)范網(wǎng)頁(yè)。添加此鏈接和屬性可以告訴搜索引擎: 在內(nèi)容相同或高度相似的所有網(wǎng)頁(yè)中,該網(wǎng)頁(yè)為最規(guī)范最有價(jià)值的頁(yè)面,推薦將該網(wǎng)頁(yè)排在搜索結(jié)果中靠前的位置。
可通過在每個(gè)非規(guī)范版本的HTML網(wǎng)頁(yè)的部分中,添加一個(gè)rel="canonical"鏈接來進(jìn)行指定規(guī)范網(wǎng)址。
例如,要指定指向網(wǎng)頁(yè) http://www.example.com/product.php?id=15786 的規(guī)范鏈接,需要按以下形式創(chuàng)建 link 元素:
然后將上述鏈接復(fù)制到某網(wǎng)頁(yè)所有非規(guī)范網(wǎng)頁(yè)版本的 head 部分中(例如 http://www.example.com/product.php?id=15786 active=1),即可完成設(shè)置。
rel="canonical" 可與相對(duì)鏈接或絕對(duì)鏈接一起使用,但建議使用絕對(duì)鏈接,以最大程度地減少可能出現(xiàn)的混亂或問題。如果網(wǎng)站需要更換域名,且使用的服務(wù)器不能創(chuàng)建服務(wù)器端重定向網(wǎng)址的情況下,就可以使用rel="canonical" 鏈接元素指定希望百度收錄域的網(wǎng)址。
wordpress中使用canonical的方法是,添加以下代碼到你使用主題的 header.php 文件的 head 區(qū)域:
?php if(is_single()){? link rel="canonical" href=" ?php echo get_permalink($post- ? " / ?php } ?
對(duì)于WordPress 2.9及以上的版本,應(yīng)該都已經(jīng)默認(rèn)支持 canonical 標(biāo)簽了。
Z-blog中使用canonical的修改方法是,編輯single模版文件,在head上加入一下代碼。