作者:Smileby陌少羽 | 2019-05-24 09:03 |点击:
最近站长在仿站是,因为需要,在设置栏目时,将一个顶级栏目设置成了外链形式,在生成首页时,发现这个设置了外链的一级栏目消失了,并且它下面的二级栏目页同样消失了
出现问题了,我们就要寻找问题!
一级导航使用了dede:channelartlist标签进行调用 那么就不会显示设置的外链
现在我们需要找到dede:channelartlist标签:
路径:include/taglib/channelartlist.lib.php 打开找到67行:
$tpsql = " reid=0 AND ispart<>2 AND ishidden<>1 AND channeltype>0 ";
改成:
$tpsql = " reid=0 AND ishidden<>1 AND channeltype>0 ";
以为这样就OK了吗?那是大错特错!
这样只是解决了dede:channelartlist标签能调用外链的栏目了!可实际使用中,如站长这样,一级栏目下还有二级栏目(非外链栏目),那这些二级栏目是需要生成html文件进行访问的!
那现在问题来了!你能在生成里面找到这个一级栏目被设置成外链的栏目吗?
答案很明显:不能!
那这个外链栏目下的二级栏目同时也消失了,现在想更新这部分栏目页也没有办法更新了!
下面接着找到:include/typelink.class.php,并打开!
找到276行:
$query = "SELECT id,typename,ispart FROM `dede_arctype` WHERE ispart<>2 AND reid=0 $ctsql ORDER BY sortrank ASC";
改成:
$query = "SELECT id,typename,ispart FROM `dede_arctype` WHERE reid=0 $ctsql ORDER BY sortrank ASC";
接着如果在二级栏目新增文章时,由于当前的一级栏目设置成了外链,所有在新增文章是无法选择二级栏目
找到:dede/inc/inc_catalog_options.php, 并打开!
找到68行:
$query = "SELECT id,typename,ispart,channeltype FROM `dede_arctype` WHERE ispart<>2 AND reid=0 ORDER BY sortrank ASC ";
改成:
$query = "SELECT id,typename,ispart,channeltype FROM `dede_arctype` WHERE reid=0 ORDER BY sortrank ASC ";
至此,织梦外部链接首页不显示 子栏目也不显示解决方案的问题全部解决