提到SEO應(yīng)該是以數(shù)據(jù)為基礎(chǔ)的,并略為展開寫了一些數(shù)據(jù)方面的準(zhǔn)備工作。數(shù)據(jù)雖然是非常重要的,但它扮演的角色只能是輔助:發(fā)現(xiàn)問題、總結(jié)改進、作為決策的參考因素等,但都無法脫離既有的SEO方法而獨立存在。
而SEO的方法,應(yīng)該分為兩種或四種:使網(wǎng)站對搜索引擎友好、使網(wǎng)站對搜索引擎的用戶友好。如果再考慮黑帽SEO手段的話,可以額外加上兩項:使搜索引擎誤以為網(wǎng)站對搜索引擎友好、使搜索引擎誤以為網(wǎng)站對搜索引擎的用戶友好。稍有經(jīng)驗的SEO,都可以總結(jié)下,看是否有任何SEO方法可以脫離這四點的范疇之外。至少我從沒看到。
當(dāng)然黑帽不在這系列文章的討論范疇之內(nèi),所以就以兩篇文章來分別簡述如何對搜索引擎及其用戶友好。
本文的主題是如何讓網(wǎng)站對搜索引擎友好,這是一個非常大的話題,文章經(jīng)過幾次刪改,最終還是決定只舉一例。畢竟搜索引擎的技術(shù)涉及面實在太廣,相應(yīng)需要的網(wǎng)站技術(shù)也很多,一篇文章無論如何也最多提及冰山一角,那不如只找個比較有代表性的例子,剩下的大家自行擴展。
如何使搜索引擎能夠更準(zhǔn)確的理解網(wǎng)頁?
搜索引擎無論如何只是程序,不可能非常完美判斷互聯(lián)網(wǎng)上那么多不同網(wǎng)頁的不同情況。
搜索引擎對網(wǎng)頁分析中的主要過程之一,是將網(wǎng)頁分成一個個明確的功能區(qū)塊。如正文區(qū)塊、相關(guān)鏈接區(qū)塊、聯(lián)系電話區(qū)塊、無關(guān)廣告區(qū)塊等等。而它判斷的方式諸如:看字?jǐn)?shù)多少、看HTML代碼的形式、將文字內(nèi)容以自然語言處理來理解等等。
分塊化
一般在HTML代碼里,最好以<div>標(biāo)簽來標(biāo)明網(wǎng)頁上的每一個重要區(qū)塊,且每個重要的<div>里面又有一個<h2>或<h3>標(biāo)簽明確指明該區(qū)塊的主題。這樣的做法可以讓頁面上每一塊內(nèi)容所表達的更清晰。尤其對于搜索引擎而言,它可以通過這樣的<div>來明確它如何去給網(wǎng)頁分塊,并通過小標(biāo)題去了解這分塊屬于什么樣的性質(zhì),從而判斷應(yīng)該如何計算處理。
可以看到上圖中被明確歸為了三塊,且清晰指出了它們分別是關(guān)聯(lián)購買、技術(shù)細(xì)節(jié)與商品細(xì)節(jié)。相比之下,不少電商網(wǎng)站最上方是產(chǎn)品圖片與價格,然后第二塊區(qū)塊開始,就把產(chǎn)品參數(shù)、產(chǎn)品描述及大量未必有用的產(chǎn)品圖片依次堆在一起,無疑就差得多了。(上圖中Product Details一塊多數(shù)內(nèi)容都是自動生成,而同時對用戶和SEO有價值的內(nèi)容,這塊是被多數(shù)電商網(wǎng)站所忽略的。)
Amazon產(chǎn)品頁的SEO,在電商領(lǐng)域是最頂尖的,遠(yuǎn)遠(yuǎn)強出eBay等網(wǎng)站。分塊化便是其中主要原因之一。
語義化
這里語義化指的是用戶所不可見的HTML代碼也要具有含義,盡管這對于用戶沒有意義,但能讓搜索引擎等程序更容易理解。(當(dāng)然也方便代碼維護,這是技術(shù)層面的事情了)
微數(shù)據(jù)、微格式等是已經(jīng)日漸被重視起來的概念,它無疑可以很明確的標(biāo)識網(wǎng)頁上面元素的含義。這里不詳細(xì)展開。但微數(shù)據(jù)等方式總有一定的局限性,例如它不能指定大區(qū)塊的含義,比如告訴搜索引擎,網(wǎng)頁上哪里是頭部、哪里是底部等。HTML5規(guī)范很好的解決了這個問題,它推薦使用的<header><footer>等標(biāo)簽可以非常好的展示網(wǎng)頁區(qū)塊。
不過很多網(wǎng)站目前基于很多原因還不會選用HTML5(但站在SEO的角度,應(yīng)該盡力去推動下),所以不可以用<header>等標(biāo)簽,還是需要用<div>。在這樣的情況下,需要注意<div>的ID命名。例如對于搜索引擎而言,<div id="header">要比<div id="toubu">容易理解得多。而且,一般來說可以用ID的地方不應(yīng)該用CLASS,如不少設(shè)計人員喜歡不管三七二十一寫<div class="header">。但W3C規(guī)范明確指出過,具有唯一性的元素應(yīng)該使用ID而非CLASS。對于搜索引擎而言,具有唯一性的元素是可以確定其出現(xiàn)位置的,它就更容易確定那個區(qū)塊到底在網(wǎng)頁上起到什么樣的角色。
舉個實例如,以前公司里面有一個PPC的著陸頁,明明網(wǎng)頁上出現(xiàn)過相關(guān)的關(guān)鍵詞,但那些詞的質(zhì)量分依然極低。分析后發(fā)現(xiàn)那些關(guān)鍵詞都是被寫在<div class="footer">區(qū)塊的,這些文字就因此被當(dāng)作頁面底部的和主題無關(guān)的內(nèi)容,使得搜索引擎錯誤的分析了網(wǎng)頁,對質(zhì)量分造成了負(fù)面的影響。
通俗化
通俗化在這里指的是不要在網(wǎng)頁上用一些難以理解的指示性文字,比如在搜索框旁邊使用“找找看”,而非常見的“搜索”。這會給用戶帶去一定程度的困擾,也會給搜索引擎帶去更大的困擾。
搜索引擎會通過自然語言處理等方式來理解這樣的文字。大致的思路如先隨機抽取1000個網(wǎng)頁樣本,先人工找出網(wǎng)頁上面的搜索區(qū)塊,再通過機器分析這些區(qū)塊一般出現(xiàn)什么樣的字眼最多。那么相應(yīng)的在分析日后其它網(wǎng)頁的時候,出現(xiàn)這樣字眼的區(qū)塊也就更可能是搜索區(qū)塊。
前面提到<div>命名的時候也差不多,<div id="header"><div id="head">等,因為都是比較常見的,搜索引擎肯定可以因此判斷它為頭部區(qū)塊。而<div id="toubu">或更糟糕的(但不罕見的)<div id="h_1">等,搜索引擎就迷茫了。最終可能搜索引擎分析出來的結(jié)果不是自己想要的。
最后
前面以輔助搜索引擎理解網(wǎng)頁為例,簡單介紹了讓網(wǎng)站對搜索引擎友好的思路。但搜索引擎不僅只是分析網(wǎng)頁、就以分析網(wǎng)頁而言,也遠(yuǎn)遠(yuǎn)不止上面這點內(nèi)容。只能當(dāng)作是思路的拓展。
如果可以的話,自己從服務(wù)器環(huán)境架設(shè)開始,從配置數(shù)據(jù)庫、從框架構(gòu)建程序、書寫前端CSS與Javascript等代碼、嘗試下Ajax、最好還自己搞定站內(nèi)搜索,這樣完完整整的做一個網(wǎng)站(在虛擬空間上用WordPress選一個模板就算搭建完的明顯不算),就會發(fā)現(xiàn)不僅對于網(wǎng)頁設(shè)計,在網(wǎng)站的各個角落都有SEO可以優(yōu)化的空間。也只有自己實際做過,才能知道如何給具體技術(shù)人員寫切實可行的文檔。
關(guān)于前面提及的一些搜索引擎方面的知識,我在看過幾本搜索引擎書后,相對而言入門級搜索引擎原理還是比較推薦《走進搜索引擎》一書。雖然從技術(shù)角度它沒有什么獨特的觀念,但以較通俗易懂的方式很好的總結(jié)了基礎(chǔ)的知識,對SEO而言還是很不錯的。
另外,實際操作中總會碰上比理論中多得多的問題。比如前面的分塊化的實現(xiàn),對于一個小型B2C而言,或許SEO想到網(wǎng)頁上面加一個產(chǎn)品參數(shù)區(qū)塊時,會被告知:產(chǎn)品參數(shù)還沒有錄入過呢!
這樣的尷尬事情總是存在,只能折中處理。比如在原先沒有錄入產(chǎn)品參數(shù)的情況下,可以先找網(wǎng)站某一個比較重要的商品分類去錄入,并進行分塊化的處理。過一段時間以數(shù)據(jù)來證明其SEO效果,以此推動其它部門進行更大規(guī)模的動作。
上面提到的數(shù)據(jù),自然是要把該商品分類下的產(chǎn)品頁額外篩選出來看的。有沒有想起該系列文章前一篇提到的數(shù)據(jù)準(zhǔn)備工作?此時就可以用上早已準(zhǔn)備好的數(shù)據(jù)了。