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