公益宣传
RSS
热门关键字:  中性点直  耐压试验  零序参数  百问百查  试题库
当前位置 :| 首页>电脑网络>DEDE>

dede当前栏目也显示的修改方法

来源: 时间:2007-09-17 点击:

DEDE让文章的分类栏目也能显示到页面上去。我这里是从网络中找到的解决办法。但还没有经过测试。

————————————————————

当你用{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") {
               $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();
                 }
    
这样再更新的你的栏目页就可以 显示当前栏目了

——————————————————————————————————

用self的时候让当前栏目也显示的修改方法

include目录里面
inc_typelink.php
第290-305行
找到并改.......成这样...(其实就是吧原来的注解了,加了段代码)

PHP代码
  1. /*               //处理同级栏目中,当前栏目的样式  
  2.               if($typetype=="self" && $row['ID']=="$typeid"){  
  3.                 if($myinnertext!=''){  
  4.                       $linkOkstr = $myinnertext;  
  5.                       $row['typelink'] = $this->GetOneTypeUrl($row);  
  6.                       $linkOkstr = str_replace("~typelink~",$row['typelink'],$linkOkstr);  
  7.                       $linkOkstr = str_replace("~typename~",$row['typename'],$linkOkstr);  
  8.                       $likeType .= $linkOkstr;  
  9.                 }  
  10.               }else{//非当前栏目  
  11.                 $row['typelink'] = $this->GetOneTypeUrl($row);  
  12.                 if(is_array($dtp2->CTags)){  
  13.                       foreach($dtp2->CTags as $tagid=>$ctag)  
  14.                       { if(isset($row[$ctag->GetName()])) $dtp2->Assign($tagid,$row[$ctag->GetName()]); }  
  15.                 }  
  16.                 $likeType .= $dtp2->GetResult();  
  17.               }  
  18. */  
  19. //注解完成,修改开始   
  20.   
  21.       if($typetype=="self" or $typetype=="top" or $typetype=="sun" or $typetype=="son") {//非当前栏目   
  22.                 $row['typelink'] = $this->GetOneTypeUrl($row);   
  23.                 if(is_array($dtp2->CTags)){   
  24.                       foreach($dtp2->CTags as $tagid=>$ctag)   
  25.                       { if(isset($row[$ctag->GetName()])) $dtp2->Assign($tagid,$row[$ctag->GetName()]); }   
  26.                 }   
  27.                 $likeType .= $dtp2->GetResult();   
  28.               }   
  29.   
  30. //修改完成   

——————————————————————————————————————————

DEDE2级页面导航就不能显示??

请教大家一个问题,就是我一直在问得,为什么我的首页导航 能显示,可是2级页面导航就不能显示了??
{dede:channel type='self' row='8'} <a href="~typelink~">~typename~</a> | {/dede}
2006-3-3 11:01 xywolf
可以显示,{dede:channel typeid='-1'},你这样设置就可以。主页的话要用0
__________________________________

修改当前栏目不显示现象

[size=2]当你用[color=red]{dede:channel type='self}'[/color]标签时
如果是当前[u][color=red]栏目[/color][/u] 则不显示 有时我们的客户 会让我们 将当前[u][color=red]栏目[/color][/u]也显示 怎么办呢
如果 只用标签的话是不可能实现的 我们只有 修改dede系统文件 来达到目的

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


[color=red]inc_typelink.php[/color]
第[color=blue]290-305[/color]行
[/size][size=2][color=green]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{//非当前[u][color=red]栏目[/color][/u]
            $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();
          }[/color]
改成:

[/size][size=2][color=indigo]if($typetype=="self") {
          $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();
          }[/color]   
这样再更新的你的[u][color=red]栏目[/color][/u]页就可以 显示当前[u][color=red]栏目[/color][/u]了[/size]
本文关键字:  dede 当前栏目
上一篇:没有了
下一篇:利用DEDE的搜索实现tag效果
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册