• 网站认证
  • 教程:6,665|
  • 话题:6,319|
  • 评论:51|
  • 会员:219|
  • 注册
  • 查看作者
  • DedeCMS织梦栏目用目录名个性化伪静态

    DedeCMS伪静态好处就不多说了,但是绝大多数的处理方式都是列表用/list-1/ 或/list-1.html,内容页用/view-1.html。这些字母加ID数字可读性差,能不能像静态页面一样采用英文或拼音URL呢。下面织梦niuqi分享修改个性伪静态的方法。

    栏目URL伪静态修改

    打开/include/helpers/channelunit.helper.php,找到

    //动态文章 if($cfg_rewrite == 'Y') { return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html'; }  

    替换为

    //动态文章 if($cfg_rewrite == 'Y') { return $typedir."/view-".$aid.'.html'; }  

    如果栏目名为 about,则该栏目下的文章URL是 /about/view-1.html。 继续往下找到

    //动态 $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;  

    替换为

    //动态 $reurl = $typedir."/";  

    意思是:将默认的频道或是列表页URL如: /plus/list.php?tid=1变更为如:/about/

    栏目列表分页修改

    打开/include/arc.listview.class.php,找到

    $plist = str_replace('.php?tid=', '-', $plist);  

    替换为

    $plist = str_replace('plus/list.php?tid=','list-', $plist);  

    将默认的 /plus/list.php?tid=1 替换成 /list-1 的模式。然后找到

    $plist = preg_replace("/&PageNo=(d+)/i",'-\1.html',$plist);  

    在下面加一句

    $plist = str_replace('/','',$plist);  

    这句是过滤掉“/”符号。

    意思是:将默认的列表分页链接格式plus/list.php?tid=x$x$xl修改为/list-x-x-x.html,然后去掉最前面的/符号,让链接成为相对链接,这样就能在列表分页实现下面的地址形式。

    /about/list-6-31-2.html 6:代表栏目ID 31:代表总文章数 2:代表页数

    但这个并不是最佳的,因为文章总数是会变化的,最佳的URL如下

    /about/list-6-2.html 伪静态规则参考 RewriteEngine On RewriteCond %{http_host} ^ [NC] RewriteRule ^(.*)$ $1 [L,R=301] #伪静态列表页(通用规则放前面,个性规则放后面) RewriteRule ^list-([0-9]+).html$ /plus/list.php?tid=$1 RewriteRule ^list-([0-9]+)-([0-9]+).html$ /plus/list.php?tid=$1&totalresult=*&PageNo=$3 RewriteRule ^view-([0-9]+)-1.html$ /plus/view.php?arcID=$1 RewriteRule ^view-([0-9]+)-([0-9]+).html$ /plus/view.php?aid=$1&pageno=$2 #以下为个性规则,一个栏目分别写一条,以此类推 RewriteRule ^about/$ /plus/list.php?tid=6 RewriteRule ^case/$ /plus/list.php?tid=5 #伪静态列表页分页 RewriteRule ^about/list-6-([0-9]+).html$ /plus/list.php?tid=6&totalresult=*&PageNo=$2 RewriteRule ^case/list-5-([0-9]+).html$ /plus/list.php?tid=6&totalresult=*&PageNo=$2 #伪静态信息浏览 RewriteRule ^about/([0-9]+).html$ /plus/view.php?aid=$1 RewriteRule ^about/view-([0-9]+)-([0-9]+).html$ /plus/view.php?aid=$1&pageno=$2 RewriteRule ^case/([0-9]+).html$ /plus/view.php?aid=$1 RewriteRule ^case/view-([0-9]+)-([0-9]+).html$ /plus/view.php?aid=$1&pageno=$2  

  • 0
  • 0
  • 0
  • 77
  • 请登录之后再进行评论

    登录
  • 做任务
  • 实时动态
  • 偏好设置
  • 单栏布局 侧栏位置: