dedecms织梦全站伪静态设置+全套伪静态规则

请确保你网站所在的主机或者服务器支持伪静态并且已经开启了伪静态功能!
 
本教程主要设置织梦伪静态页面包括有:
1.列表页 /plus/list-2.html
2.列表页分页 /plus/list-2-26-2.html
3.内容页 /plus/view-112-1.html
4.内容页分页 /plus/view-112-2.html
5.TAG标签页 /tags/织梦/
6.TAG标签分页 /tags/织梦/2/
7.搜索页 /search/织梦.html
8.搜索页分页 /search/织梦-2.html

网站后台开启伪静态选项



网站后台设置整站为动态

这里可以借助一个小插件来完成,一劳永逸
插件下载懒人包



网站文件修改
1、列表页和内容页伪静态链接
打开 \include\helpers\channelunit.helper.php 找到
  1. global $cfg_typedir_df;
改成
  1. global $cfg_typedir_df,$cfg_rewrite;
继续找到
  1. $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
改成
  1. if($cfg_rewrite == 'Y')
  2. {
  3.     $reurl = $GLOBALS["cfg_phpurl"]."/list-".$typeid.'.html';
  4. }
  5. else
  6. {
  7.     //动态
  8.     $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
  9. }

2、手机版列表页分页不使用电脑版伪静态
打开 \include\arc.listview.class.php 找到
  1. if($cfg_rewrite == 'Y')
大概在1198行,把这一行改成
  1. if($cfg_rewrite == 'Y' && !defined('DEDEMOB'))

3、TAG标签伪静态链接
打开 \include\taglib\tag.lib.php 找到
  1. $row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
改成
  1. $row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";

4、TAG标签分页伪静态链接
打开 \include\arc.taglist.class.php 找到
  1. $this->PageNo = $GLOBALS['PageNo'];
在它的下面加入
  1. if($this->PageNo == 0)
  2. {
  3.     $this->PageNo = 1;
  4. }
继续找到
  1. $prepage="";
在它的上面加入
  1. global $cfg_rewrite;
继续找到
  1. $purl .= "?/".urlencode($this->Tag);
改成
  1. if($cfg_rewrite == 'Y')
  2. {
  3.     $purl = "/tags/".urlencode($this->Tag);
  4. }
  5. else
  6. {
  7.     $purl .= "?/".urlencode($this->Tag);
  8. }

4、搜索页伪静态链接
打开 \plus\search.php 找到
  1. $t1 = ExecTime();
在它的下面加入
  1. $keyword = preg_replace("/-(\d+)/i",'',$keyword);
  2. $oldkeyword = preg_replace("/-(\d+)/i",$oldkeyword);
打开 \include\arc.searchview.class.php 找到
  1. global $oldkeyword;
改成
  1. global $oldkeyword,$cfg_rewrite;
继续找到
  1. $purl .= "?".$geturl;
改成
  1. if($cfg_rewrite != 'Y' && !defined('DEDEMOB'))
  2. {
  3.     $purl .= "?".$geturl;
  4. }
  5. else
  6. {
  7.     $purl = '/search/'.urlencode($oldkeyword);
  8. }
继续找到
  1. return $plist;
在它的上面加入
  1. if($cfg_rewrite == 'Y' && !defined('DEDEMOB'))
  2. {
  3.     $plist = preg_replace("/PageNo=(\d+)/i",'-\\1.html',$plist);
  4. }

最后还需要在你模板里搜索框代码改成静态的js提交搜索,参考下面代码,注意红框的地方