PHP程序员站--PHP编程开发平台
 当前位置:主页 >> PHP开源 >> 开源CMS >> 

修改DedeCms的当前栏目不显示现象

修改DedeCms的当前栏目不显示现象

来源:互联网  作者:  发布时间:2009-08-27
当你用{dede:channel type='self}'标签时,如果是当前栏目则不

当你用{dede:channel type='self}'标签时,如果是当前栏目则不显示,有时我们的客户会让我们当前栏目也显示,怎么办呢?

如果只用标签的话是不可能实现的,我们只有修改dede系统文件来达到目的。

具体怎么实现呢?请看下面操作:

inc_typelink.php

第290-305行

以下为引用的内容:
if($typetype=="self" && $row['ID']=="$typeid"){
            if($myinnertext!=''){
                $linkOkstr = $myinnertext;
                $row['typelink'] = $this->GetOneTypeUrl($row);
                $linkOkstr = str_replace("~typelink~",$row['typelink'],$linkOkstr);
                $linkOkstr = str_replace("~typename~",$row['typename'],$linkOkstr);


                $likeType .= $linkOkstr;
            }
          }else{//非当前栏目
            $row['typelink'] = $this->GetOneTypeUrl($row);
            if(is_array($dtp2->CTags)){
                foreach($dtp2->CTags as $tagid=>$ctag)
                { if(isset($row[$ctag->GetName()])) $dtp2->Assign($tagid,$row[$ctag->GetName()]); }
            }
            $likeType .= $dtp2->GetResult();
          }

改成:

以下为引用的内容:
if($typetype=="self" || $typetype=="top" || $typetype=="sun" || $typetype=="son") ) {
          $row['typelink'] = $this->GetOneTypeUrl($row);
            if(is_array($dtp2->CTags)){
                foreach($dtp2->CTags as $tagid=>$ctag)
                { if(isset($row[$ctag->GetName()])) $dtp2->Assign($tagid,$row[$ctag->GetName()]); }


            }
            $likeType .= $dtp2->GetResult();
          }  

这样再更新的你的栏目页就可以显示当前栏目了。


延伸阅读:
dedecms最新注射漏洞
DEDECMS文章点击数为0的解决方法
dede5.0 升级5.1出现include\inc_pubtag_make.php on line 288错误的解决方法
dedecms Tag不能添加解决办法
实现dedecms图集单击图片翻页的功能
dedecms注射漏洞
dedecms最新 tag.php注入漏洞分析与利用
DEDE5.3把tag标签逗号改成空格的方法分享
DEDE实现“文章标题-栏目名称-网站名”
Tags: dedecms   CMS   dede   dedecms   栏目   dedecms   dedecms   dedecms   dedecms   dedecms   C   ECMS  
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号