我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

dedecms经过了动态化,伪静态处理后,就可以解决大多数的需求了。不过,还是会有网友觉得dedecms的链接不够美观。所以,还是会希望能够自定义常见的url链接。那么本文中,苏南大叔就说的是:dede伪静态之后,如何再美化一下dedecms的链接。这里提前说明的是:dede的定制url链接的结果,也并不是完美的。

苏南大叔:dedecms 如何修改定制 url 链接 - dedecms链接定制
dedecms 如何修改定制 url 链接(图6-1)

期待的url变化如下

本文的测试环境是dedecms5.7 sp2。期待的变化列表如下:

实际的url期待的url
/plus/list-1-1.html/category/list-1-1.html
/plus/list.php?tid=1/category/list-1-1.html
/plus/view-1-1.html/archives/view-1-1.html
/tags.php?/测试/1//tags/测试/1.html

模版缓存的文件夹是:/data/tplcache/*。更新系统缓存的地址url:/dede/sys_cache_up.php

栏目列表页面

修改的是导航栏内的栏目链接和“更多”字样的栏目链接地址。文件是:

/include/helpers/channelunit.helper.php

line232:

$reurl = "/category/list-".$typeid.".html";

苏南大叔:dedecms 如何修改定制 url 链接 - category_list
dedecms 如何修改定制 url 链接(图6-2)

/include/arc.listview.class.php

line 1200,增加一行代码。

$plist = str_replace('plus', 'category', $plist);

文章页链接

/include/helpers/channelunit.helper.php

line165:

return "/archives/view-".$aid.'-1.html';

苏南大叔:dedecms 如何修改定制 url 链接 - article_view
dedecms 如何修改定制 url 链接(图6-3)

/include/arc.archives.class.php

line945,line961,增加下面一行代码:

$PageList = str_replace('plus', 'archives', $PageList);

苏南大叔:dedecms 如何修改定制 url 链接 - archives_1
dedecms 如何修改定制 url 链接(图6-4)

苏南大叔:dedecms 如何修改定制 url 链接 - archives_2
dedecms 如何修改定制 url 链接(图6-5)

标签tag

/include/taglib/tag.lib.php

line87,修改如下:

$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";

苏南大叔:dedecms 如何修改定制 url 链接 - tag
dedecms 如何修改定制 url 链接(图6-6)

搜索页链接

依次打开include文件夹下的channelunit.func.phparc.searchview.class.phparc.taglist.class.php以及/include/taglib/hotwords.lib.php,查找search.php?替换为search.html?即可。

nginx 规则

nginx的规则做一些更新,如下:

location / {
    index index.php index.html index.htm;
    rewrite "^/index.html$" /index.php last;
    rewrite ^/category/list-([0-9]+)\.html$ /plus/list.php?tid=$1;
    rewrite ^/category/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3;
    rewrite ^/archives/view-([0-9]+)-1\.html$ /plus/view.php?arcID=$1;
    rewrite ^/archives/view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?aid=$1&pageno=$2;
    rewrite "^/tags/$" /tags.php last;
    rewrite "^/tags/(.*)/$" /tags.php?/$1/ last;
    rewrite "^/search.html?(.*)/$" /search.php?$1 last;
}

总结

本文中的修改,就仅仅是作为示意。具体的,大家想把链接改成什么,就请根据自己的需求进行修改。千万不能复制粘贴之后,然后就跳出来说不能用。每句话是什么意思,有什么用,请大家搞清楚之后再进行修改。

更多dede的文章,请点击:苏南大叔的dedecms经验文章。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   dede