dede动态跳转修改为静态url地址 - 电脑 - 【南平电脑网】_南平电脑维修_南平笔记本电脑维修_监控安装_市区上门维修
公司动态

dede动态跳转修改为静态url地址

摘要:文章目录索引(?) [-] 文章简介 演示系统及注意事项 dede动态跳转修改为静态url地址修改文章简介动态的URL地址特别是dede系统默认自带的动态,都是使用script跳转的...

发布日期:2018-04-25

文章目录索引(?) [-]

    文章简介 演示系统及注意事项 dede动态跳转修改为静态url地址修改

文章简介

动态的URL地址特别是dede系统默认自带的动态,都是使用script跳转的,非常的恶心,正好作者也要修改这个,就把dede默认动态跳转到script的方法直接改成歌曲态的URL地址了,也就是大家在列表页调用arcurl时直接显示的是静态URL地址,而不是动态的plus/view.php?aid=1这样的了。

演示系统及注意事项

演示系统:dede5.7UTF8版本

注意事项:作者本文这里修改的最终效果就是内容页和专题页的动态URL在使用arcurl调用时直接显示的是url地址,另外织梦默认专题是没有跳转的,作者这里简单的二次开发了改成了可跳转,大家可参考解决dede专题模型没有跳转

dede动态跳转修改为静态url地址修改

第1步:打开arclist.lib.php文件。

电脑维修技术网注:arclist.lib.php文件是dede的核心文件,此文件在“include\taglib\arclist.lib.php”。

第2步:在打开的arclist.lib.php文件中全文搜索“$query”(位于第376行),并找到相应的sql语句,修改为以下SQL语句并保存。原文网址http://www.pc811.com/6/4/26212.html

  1. $query="SELECTarc.*,spec.redirecturlasspecurl,arcurl.redirecturl,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath$addfieldsSqlFROM`$maintable`arcLEFTJOIN`dede_arctype`tponarc.typeid=tp.idleftjoindede_addonspecspeconarc.id=spec.aidleftjoin`dede_addonarticle`arcurlonarcurl.aid=arc.id$addfieldsSqlJoin$orwhere$ordersql$limitsql";

电脑维修技术网注:以上SQL语句解释 上面语句比官方原来的多加了2个左联,分别左联dede_addonspec和dede_addonarticle表,同时添加查询这2个表的URL跳转地址,上面的SQL语句是添加完后SQL语句。

第3步:再次全文搜索“$query”(位于第405行),找到这行sql语句,修改为以下sql语句并保存。

  1. $query="SELECTarc.*,spec.redirecturlasspecurl,arcurl.redirecturl,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath$addfieldsSqlFROM`$maintable`arcleftjoin`dede_arctype`tponarc.typeid=tp.idleftjoin`dede_addonspec`speconarc.id=spec.aidleftjoin`dede_addonarticle`arcurlonarcurl.aid=arc.id$addfieldsSqlJoinWHEREarc.idin($idlist)$ordersql";

第4步:全文搜索“arcurl”一行代码(第490行代码处),只有一行代码替换成以下几行代码并保存。

  1. if($row["specurl"]!=""){//判断专题页的跳转是否为空,如果空就直接显示静态URL地址。$row["filename"]=$row["arcurl"]=$row["specurl"];
  2. }elseif($row["redirecturl"]!=""){//判断文章页跳转是否为空,如果为空就直接显示静态URL$row["filename"]=$row["arcurl"]=$row["redirecturl"];
  3. }else{$row["filename"]=$row["arcurl"]=GetFileUrl($row["id"],$row["typeid"],$row["senddate"],$row["title"],$row["ismake"],$row["arcrank"],$row["namerule"],$row["typedir"],$row["money"],$row["filename"],$row["moresite"],$row["siteurl"],$row["sitepath"]);
  4. }

电脑维修技术网代码说明: 先判断从第2 3步sql查询出来的专题url是否为空,如果不是空的,就直接把arcurl替换为所填写的地址,内容也是这样,最后如果全是空的,那么就是正常的文章了,就按官方默认的url地址算就行了。

第5步:完成以上代码并保存,上传到服务器即可生效。