文章来介绍一下关于DEDECMS5.6和5.7中文档跳转网址不经过中间页跳转而直接显示跳转网址的解决办法,有需要学习的朋友可参考一下.
找到dedecms文件L/include/helpers/channelunit.helper.php中,第157行处开始修改.
修改前代码如下:
- if($rank!=0 || $ismake==-1 || $typeid==0 || $money>0)
- {
- //动态文章
- if($cfg_rewrite == 'Y')
- {
- return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
- }
- else
- {
- return $GLOBALS['cfg_phpurl']."/view.php?aid=$aid";
- }
- }
修改后代码如下:
- if($rank!=0 || $ismake==-1 || $typeid==0 || $money>0)
- {
- //--------跳转网址不经过中间页直接显示----------------begin---by oicto
- global $dsql;
- $flag = $dsql->GetOne("select * from dede_archives where id = $aid;");
- $flag = $flag['flag'];
- if(preg_match("/j/",$flag)){
- $addontable = $dsql->GetOne("select art.id,cht.addtable from dede_arctype art left join dede_channeltype cht on art.channeltype = cht.id where art.id = $typeid");
- $addtable = $addontable['addtable'];
- $GoUrl = $dsql->GetOne("select redirecturl from $addtable where aid = $aid");
- $redirecturl = $GoUrl['redirecturl'];
- if($redirecturl != ''){
- return $redirecturl;
- }
- }
- //--------跳转网址不经过中间页直接显示----------------end---by oicto
- //动态文章
- if($cfg_rewrite == 'Y')
- { //Vevb.com
- return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
- }
- else
- {
- return $GLOBALS['cfg_phpurl']."/view.php?aid=$aid";
- }
- }
修改完毕后,重新发布首页和列表页,则跳转网址的文档其网址直接显示为redirecturl跳转网址而不在显示为view.php跳转了.
新闻热点
疑难解答