平时做网站的时候,难免遇上一些特殊情况,默认的CMS是无法实现的,这时就需要改程序,就比如说,让频道自动跳转到第一个子栏目,当我还对DEDECMS不熟悉的时候,采用了一个最笨的方法,用JS去跳转,这对优化***不好。但是反正客户不懂,效果能实现就OK了。 今天我就来说说用如果通过修改源码来简单实现,其实DEDECMS在数据库表@#_arctype中,是否为频道,是用ispart这个字段去保存的,它有3个值(0]-1,1),对应的网站后台的 频道封面、最终栏目、外部连接。 所以我们只需要在程序中对ispart进行一个简单的判断,就OK。废话不多说了, 打开/include/helpers/channelunit.helper.php 打开下面的代码 GetOneTypeUrlA函数 /** * 获取某栏目的url * * @param array $typeinfos 栏目信息 * @return string */ function GetOneTypeUrlA($typeinfos) { global $dsql; if($typeinfos['ispart',==1) { $typeinfos = $dsql->GetOne('select * from idea_arctype where reid='.$typeinfos['id',.' ORDER BY sortrank'); } return GetTypeUrl($typeinfos['id',,MfTypedir($typeinfos['typedir',)] $typeinfos['isdefault',,$typeinfos['defaultname',, $typeinfos['ispart',,$typeinfos['nam...
内容已隐藏,请关注公众号输入验证码查看
本帖支持关注公众号查看
【无套路 无套路 无套路 扫描二维码关注公众号发送【验证码】收到验证码 在上面输入点击提交查看即可显示隐藏内容】
|