分享好友 资讯首页 频道列表

destoon伪静态之列表,内容根目录,一级目录化

2018-06-20 13:340
 因为自己的需要,只写了一个apache的规则,其它环境请自己扩展


把以下规则,找到根目录下的  .htaccess 添加进去

RewriteRule ^(.*)1([0-9]+)([0-9]+)?([/])?$ $1/show.php?itemid=$2&page=$3
RewriteRule ^(.*)0([0-9]+)([0-9]+)?([/])?$ $1/list.php?catid=$2&page=$3

打开api/url.inc.php
搜索 
$urls['php']['list'][5] = array('example'=>'('.$L['url_rewrite'].') mulu-c1-2.html','index'=>'{$catdir}-c{$catid}-1.html', 'page'=>'{$catdir}-c{$catid}-{$page}.html');

在它下面添加
$urls['php']['list'][6] = array('example'=>'('.$L['url_rewrite'].') 01','index'=>'0{$catid}', 'page'=>'0{$catid}{$page}');

搜索
$urls['php']['item'][4] = array('example'=>'('.$L['url_rewrite'].') show/1/','index'=>'show/{$itemid}/', 'page'=>'show/{$itemid}/{$page}/');
在它下面添加
$urls['php']['item'][5] = array('example'=>'('.$L['url_rewrite'].') m15','index'=>'1{$itemid}', 'page'=>'1{$itemid}{$page}');

网站后台,模块设置,选择新加的伪静态规则,更新地址。

修改如商城模块的目录 mall为m,  

这时我们通过后台,或者网站前台访问内容或分类网址是  https://www.dtmuban.com/m/12  这样的形式,要变成 https://www.dtmuban.com/m12   需要自己 修改 {$t[linkurl]} 这个标签了,这是因为我们的调用标签会给{$t[linkurl]} 自动加上频道的网址,而每个频道 的网址都是默认以  /  结束的,所以才有了这多出来的一  /  

这个可以用函数过虑下,如我的实际地址是: https://www.dtmuban.com/m/12  那么过虑使用方法   {str_replac e("m/", "m", $t[linkurl]);} ,注:把c 和e之间的空格删除,因为网站安全设置会过虑php函数的原因,不能连一起写。

这样就把/过虑掉了

 


下面是我扩展的一个函数,可以判断网站是否开启伪静态,如果开启就替换网址,复制函数加入include/global.func.php中
 

//url根目录化
function dtmoban_com($url){
   global $DT, $CFG;
   if(!$DT['rewrite']) return $url;
   if(subst($url,-1)=='/'){
       $url = subst($url,0,strlen($url)-1);
   }
   if(strstr($url,"/0")){
       $url = str_replac('/0', '0', "$url");
   }elseif(strstr($url,"/1")){
       $url = str_replac('/1', '1', "$url");
       if(strstr($url,"http:/1")){
           $url = str_replac('http:/1', 'https://1', "$url");
       }elseif(strstr($url,"http:/0")){
           $url = str_replac('http:/0', 'https://0', "$url");
       }
   }
   return $url;
}



调用方法
{dtmoban_com($t[linkurl])}
举报 0
收藏 0
评论 0
10649