筆者使用免費的萬網虛擬linux主機,比許多付費的空間要快,也要安全些。在SEO實戰中,對動態頁面進行偽靜態能獲得較好的權重。真正的靜態頁面儲存量大,進行刪除或更新會造成大量文件碎片。動態頁面可以實時更新,但有可能導致死循環,而偽靜態卻不會出現這種情況。
從網上找了一大堆帖子,實現起來總是有問題。下面分享經本博客測試成功的其中一種偽靜態方法:帶靜態鏈接地址的TAG偽靜態修改方法。
TAG偽靜態實際上是利用重寫偽靜態規則Rewrite功能。最終列表形式如:http://www.xxx.com/tags.html,該tag最終形式如http://www.xxx.com/tags/關鍵詞.html,進入正題。
1.修改動態TAG標簽訪問地址:修改/include/taglib/tag.lib.php
在差不多87行找到
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
將其改成
$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword']).".html";
這樣就把每個動態的tag標簽生成了如:
www.xxx.com/tags/關鍵字.html
2.修改動態TAG列表頁訪問地址,打開所使用模版文件夾下的:修改taglist.html
路徑如:/templets/default/taglist.html,用編輯器打開,把里面所有的"tags.php"全部替換為"tag.html"
3.設置偽靜態規則(重點):修改.htaccess文件
三番五次出錯的是偽靜態規則,因為筆者不懂正則表達式,測試了萬網的linux主機只有下面規則是合理的。
RewriteEngine on RewriteRule ^tags.html$ /tags.php RewriteRule ^tags/(.*).html$ /tags.php?/$1/
中間不能有任何的文字說明,然后更新下緩存就可以了。
4.首頁、列表頁、內容頁調用TAG標簽帶靜態鏈接:修改\include\helpers\archive.helper.php
前面已經把TAG標簽訪問地址靜態化了,而dede默認調用的TAG標簽是不帶鏈接的,網上有帶動態鏈接的方法,這里只需要修改一下。
首頁、列表頁調用TAG標簽,用以下代碼就可以了:代碼說明首頁、列表頁調用最新TAG標簽。
{dede:tag row='30' sort='new'}[field:id function=GetTags(@me)/] {/dede:tag}
如果需要帶鏈接,請注釋\include\helpers\archive.helper.php文件130行
// $tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
用下面語句替換,當然你也可以加入自己的樣式
$tags .= "<a href='/tags/".urlencode($row['tag']).".html'>".$row['tag']."</a>";