• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    实现dedecms织梦目录式伪静态的方法
    POST TIME:2018-01-08 21:28

    有时候我们的模板涉及到需要动态更新显示的内容,也有人不喜欢静态,担心文件过多或者生成麻烦....等等各种理由都需要用到织梦伪静态。但是DEDECMS的文章页默认的伪静态的url都是:http://网站地址/plus/view-12-1.html 形式,千篇一律的连接地址并不好看。跟版网小编在网上寻找N久之后终于发现一个可以间接实现织梦栏目目录形式伪静态的方法:
    直接用织梦后台栏目设置文章命名规则里的地址来打造个性的DEDECMS文章页伪静态URL。
    一般我们在后台设置栏目的时候,都会设置一下文章文章命名规则,如下图。

    这次我们就用这个文章命名规则里自己设置的规则来打造完美的文章页伪静态URL。

    修改文件includehelperschannelunit.helper.php(修改前请备份文件)
    直接搜索: //动态文章
    下一行看到:
    return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';

    画红框的地方替换成以下代码:

        /** 
        * http://www.qimiweb.com/ 
        */ 
        $articleDir = MfTypedir($typedir); 
         
                   $articleRule = strtolower($namerule); 
         
                   if($articleRule=='') 
         
                   { 
         
                       $articleRule = strtolower($GLOBALS['cfg_df_namerule']); 
         
                   } 
         
                   if($typedir=='') 
         
                   { 
         
                       $articleDir  = $GLOBALS['cfg_cmspath'].$GLOBALS['cfg_arcdir']; 
         
                   } 
         
                   $dtime = GetDateMk($timetag); 
         
                   list($y, $m, $d) = explode('-', $dtime); 
         
                   $arr_rpsource = array('{typedir}','{y}','{m}','{d}','{timestamp}','{aid}','{cc}'); 
         
                   $arr_rpvalues = array($articleDir,$y, $m, $d, $timetag, $aid, dd2char($m.$d.$aid.$y)); 
         
                   if($filename != '') 
         
                   { 
         
                       $articleRule = dirname($articleRule).'/'.$filename.$GLOBALS['cfg_df_ext']; 
         
                   } 
         
                   $articleRule = str_replace($arr_rpsource,$arr_rpvalues,$articleRule); 
         
                   if(preg_match("/{p/", $articleRule)) 
         
                   { 
         
                       $articleRule = str_replace('{pinyin}',GetPinyin($title).'_'.$aid,$articleRule); 
         
                       $articleRule = str_replace('{py}',GetPinyin($title,1).'_'.$aid,$articleRule); 
         
                   } 
         
                   $articleUrl = '/'.preg_replace("/^//", '', $articleRule); 
         
                            
         
                       return $articleUrl; 

    接下来我们要在系统基本参数->核心设置里设置一下开启伪静态

    勾选,是否使用伪静态。这样就开启了伪静态功能了,现在随便添加一篇文章测试一下

    发布选项这里要选择 仅动态浏览,这样织梦系统才会是伪静态的。

    发布成功后,可以看到,文章伪静态的地址和真静态生成html的地址是一模一样的了。

    最后附以上案例的伪静态规则:

    RewriteRule ^(.*)/cslm/([0-9]+)/([0-9]+)/([0-9]+).html $1/plus/view.php?aid=$4
    

    具体伪静态规则要看自己的情况而修改了,多少栏目就添加多少规则。一般网站栏目都是固定的,所以也不算麻烦。性价比还是蛮高的。
    OK,想实现dedecms织梦目录式伪静态的朋友们就可以参考这个方法了!

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!