當前位置:主頁 > 網站優化 >

最詳細的織夢Dedecms偽靜態方法(含偽靜態規則)

奕星seo偽原創
作者: 奕星SEO 分類: 網站優化 發布時間: 2020-03-17 03:52 內容來源:網絡整理閱讀量:

1)你的網站空間是否支持偽靜態?

這點很重要,不然一切都是白搭。你可以與空間的IDC商聯系一下,如果是自己的服務器,那就更好辦了,一般來說,空間都是支持偽靜態的。Apache服務器偽靜態相對簡單,直接在.htaccess文件中加入相應偽靜態規則即可;而IIS服務器偽靜態的實現,則需要加載Rewrite組件,然后配置httpd.ini文件。

2)開啟DedeCms偽靜態

a.后臺-系統參數-核心設置-是否使用偽靜態:選擇“是”;

b.如果你啟用了問答模塊,則后臺-系統參數-模塊設置-是否使用偽靜態:選擇“是”;

c.創建欄目或批量增加欄目時,欄目列表選項:選擇“使用動態頁”;添加新文章時,發布選項:選擇“僅動態瀏覽 ”。當然,你也可以更改他們的模板,讓他們默認就是這兩個值,一勞永逸。修改方法很簡單,稍懂些HTML基礎就行了,這里就不再累述了。

d.如果你的網站已經存在生成的靜態欄目或文章HTML,那么只需在后臺-系統-SQL命令行工具中執行如下語句:
update _arctype set isdefault=-1;
update dede_archives set ismake=-1;
其中,dede是你安裝時的數據表前綴,根據實際情況替換。

事實上,開啟DedeCms偽靜態支持并不能完全在后臺配置,有很多地方還是需要手動修改的,期望官方完善。

織夢DedeCms偽靜態方法

織夢DedeCms偽靜態,涉及到PHP源碼的修改,你可以借助Dreamweaver或是EditPlus一類編輯軟件來操作。下面說下織夢DedeCms全站偽靜態的實現方法,適用于V5.3以上版本。小拼的DedeCms偽靜態測試環境是Windows IIS6,舉一反三,Linux或其它服務器的偽靜態實現原理都是一樣的,只要搞清楚思路就行了。

1)DedeCms首頁偽靜態

把站點根目錄下index.html刪除,以后不更新主頁HTML即可,當然你也可以選擇不使用動態首頁。

2)DedeCms頻道|列表頁|文章頁偽靜態

主要通過修改GetFileName()、GetTypeUrl()這兩個函數實現。DedeCms V5.3、DedeCms V5.7和DedeCms V5.6版本,打開/include/channelunit.func.php進行修改。注意:DedeCms V5.7,此文件路徑更改了,你打開/include/helpers/channelunit.helper.php即可。

a.將GetFileName()中的如下代碼:
//動態文章
if($cfg_rewrite == 'Y')
{
return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
}替換為
//動態文章
if($cfg_rewrite == 'Y')
{
return "/archives/view-".$aid.'-1.html';
}將文章頁默認的/plus/view-1-1.html鏈接格式改為/archives/view-1-1.html,這個隨個人喜歡,不作更改也行。

b.將GetTypeUrl()中的如下代碼:
//動態
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;替換為
//動態
$reurl = "/category/list-".$typeid.".html";這步必須修改,即讓你的頻道或是列表頁URL變更為/category/list-1.html形式。

3)DedeCms列表分頁偽靜態

打開/include/arc.listview.class.php,找到獲取動態的分頁列表GetPageListDM()函數末尾處:
$plist = str_replace('.php?tid=', '-', $plist);替換為
$plist = str_replace('plus', 'category', $plist);//將默認的plus替換成category
$plist = str_replace('.php?tid=', '-', $plist);將列表分頁默認鏈接格式/plus/list-1-2-1.html修改為/category/list-1-2-1.html,這步也可以不作更改。

4)DedeCms文章分頁偽靜態

打開/include/arc.archives.class.php,找到獲取動態的分頁列表GetPagebreakDM()函數末尾片:
$PageList = str_replace(".php?aid=","-",$PageList);替換為
$plist = str_replace('plus', 'archives', $plist);//將默認的plus替換成archives
$PageList = str_replace(".php?aid=","-",$PageList);這步不作修改也可以,只是個人喜好問題。

5)DedeCmsTAG標簽偽靜態

DedeCms默認的TAG標簽URL,形如/tags.php?/5.7/,非常之難看。打開/include/taglib/tag.lib.php,找到lib_tag()函數下的:
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";替換為
$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";到這里,TAG標簽URL中的“.php?”號就去掉了。

6)DedeCms搜索偽靜態

DedeCms搜索URL靜態化比較麻煩,附帶參數多不說,參數也可能變化,像搜索結果分頁的URL就特麻煩,偽靜態規則匹配復雜。就偷下懶,將搜索URL中“search.php?…”直接替換為“search.html?…”,至于“?”號之后的參數以任意字符進行匹配。


本文鏈接地址:http://www.pxynqa.icu/webyouhua/26318.html
上一篇:<<織夢dede中內容頁分頁數目太多時隱藏方法
下一篇:dedecms專題模版{dede:field.note/}代碼結構修改>>
吉林时时历史开奖号码 球探比分直播 手机看足球比分直播 大赢家足球比分直播即时比分 百度 中山期货配资公司 广东快乐10分走势 东莞酒店一条龙服务有什么项目 股票行情实时查询006507 酒店小姐 qvod 特级黄色片特级黄色片 微乐辽宁麻将玩法 日本a片用语 呼和浩特快餐女上门 日韩a片下载最新更新 什么股票配资 微乐江西麻将app 球探网足球即时比分网捷报比分网