WordPRess作為一種主流的部落格系統,得到許多站長的青睞。事實上,wordpress也非常利於SEO,今天就來談談wordpress中的固定連結設定以及優化。
固定連結一般有5種形式:預設的?p=id形式,日期+名稱形式,數字形式,還有就是自訂結構。大家可以發現大多數的wordpress網站都是使用的最後一種自訂結構形式,因為這樣的形式有利於搜尋引擎優化。那麼,自訂結構又該怎麼設定好呢?
一般的自訂結構主要有以下兩種:直接設定為/%postname%/或是設定成/%postname%.html。其中%postname%就是文章的自訂網址,這個在寫文章的時候會自動產生以文章標題為網址的連結。當然了,中文站一般會使用插件來翻譯,或是自己編輯成拼音的形式。個人推薦拼音的形式,可以把文章內容的主要關鍵字用拼音寫出來,這樣更有利於排名。
以上說的兩種自訂結構都很好,那麼應該選擇哪種好呢?依筆者的一點淺見,選擇/%postname%/結構比較好。為什麼這麼說呢?選擇前者,事實上搜尋引擎就把你的文章當成了網站子目錄的首頁,而選擇後者就是當作根目錄下的一個html文檔。那麼,子目錄的首頁和根目錄的普通頁面哪個權重高呢?應該是二級目錄的首頁,因此筆者推薦使用前者,即如同/%postname%/這樣的結構。
固定連結設定好後,只要點選「更新」就可以了。如果是linux主機,wordpress會自動產生.htaccess,相當於固定連結就這樣設定好了;然而windows主機就要麻煩不少,需要站長自己撰寫httod.ini,並上傳到根目錄。這裡提供一個範本。
[ISAPI_Rewrite]
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /sitemap.html /sitemap.html [L]
RewriteRule /favicon.ico /favicon.ico [L]
RewriteRule /wap(.*) /wap$1 [L]
RewriteRule /content/uploads/(.*) /content/uploads/$1 [L]
RewriteRule /wp-(.*) /wp-$1 [L]
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]
只要把以上程式碼貼到文字文檔中,再另存為httpd.ini並上傳到根目錄就行了。要注意的是,由於win主機在這方面的嚴重缺陷,以上程式碼也有個小漏洞,就是網站所有檔案都無法存取。解決方法也很簡單,如果是根目錄的文件,只要添加RewriteRule /文件名/文件名[L] 就行了,而目錄除了範本中已經出現的以外,只要添加RewriteRule /文件夾目錄/(.*) /資料夾目錄/$1 [L]就可以了。至此,wordpress的固定連結設定總算是完成了。
那麼,設定了自己的固定鏈接,預設的?p=id形式的鏈接還能訪問嗎?答案是可以的。又要說linux主機和win主機的優劣了。如果是linux主機,造訪?p=形式的網頁會自動301跳到別名的文章頁(即你自己設定的連結),然而win主機則不會,由此就造成了每個文章頁面都可以用兩種不同的連結訪問。這樣對搜尋引擎是很不友善的,因此必須要讓短連結301跳到別名連結。那怎麼設定呢?只要在模板中找到header.php,在頭部加以下程式碼就可以了。
if($_GET['p']||$_GET['page_id']){
if($_GET['p'])$id=$_GET['p'];
if($_GET['page_id'])$id=$_GET['page_id'];
$post= get_post($id);
$name=$post->post_name;
header('HTTP/1.1 301 Moved Permanently');//發出301頭部
header('Location: '.bloginfo('url').'/'.$name.'/');
exit();
}else if($_GET['cat']){
$id=$_GET['cat'];
$cat=get_category($id);
$name=$cat->slug;
header('HTTP/1.1 301 Moved Permanently');
header('Location: '.bloginfo('url').'/cat/'.$name.'/');
exit();
}else if($_GET['tag']){
$name=$_GET['tag'];
header('HTTP/1.1 301 Moved Permanently');
header('Location: '.bloginfo('url').'/tag/'.$name.'/');
exit();
}?>
呵呵,這下總算是大功告成了,無論是linux主機還是win主機,都算是真正做好了固定連結。由此也可見,如果用wordpress系統的話,盡量使用linux主機。以上是睡眠枕頭網( www.89948.net )站長的一點心得,歡迎提意見和轉載,轉載請註明鏈接哦,謝謝!
責任編輯:強子作者qzonelove 的個人空