FreeDiscuz!'s Archiver

horseluke 发表于 2008-6-22 20:30

[非插件]主题分类过滤“未分类”主题for DZ6.1F

修改自:[url]http://www.discuz.net/thread-496302-1-1.html[/url]

注意:经初步测试,该方法同样适合于Discuz 6.0正式版和Discuz6.1正式版,但稍微可能有些不同,请自行摸索。


1. /forumdisplay.php
查找:[code]
        } elseif($filter == 'type' && $forum['threadtypes']['listable'] && $typeid && isset($forum['threadtypes']['types'][$typeid])) {
[/code]在上面加入:[code]
   } elseif($filter == 'type' && $typeid == 0) {
      $forumdisplayadd .= "&filter=type&typeid=$typeid";
      $comma = $types = '';
      foreach($forum['threadtypes']['types'] as $type => $typevar) {
        $types .= "$comma'$type'";
        $comma = ',';
      }
   $filteradd = $types ? "AND typeid NOT IN ($types)" : "AND 1=0";
[/code]2. 编辑模版: forumdisplay.htm
查找[code]
<!--{loop $forum['threadtypes']['flat'] $id $name}--><!--{if $typeid != $id}--><a href="forumdisplay.php?fid=$fid&amp;filter=type&amp;typeid=$id">$name</a><!--{else}--><strong>$name</strong><!--{/if}--> <!--{/loop}-->
[/code]在下面(或者上面也可,只是显示顺序不同)添加:[code]
    <a href="forumdisplay.php?fid=$fid&amp;filter=type&amp;typeid=0">未分类</a>
[/code]=================================================


若想在显示未主题分类的帖子同时不显示标记为“移动”的帖子链接,请把第一步修改的最后一句话:[code]
$filteradd = $types ? "AND typeid NOT IN ($types)" : "AND 1=0";
[/code]改为[code]
$filteradd = $types ? "AND typeid NOT IN ($types) AND closed ='0'" : "AND 1=0";
[/code]=============================================

P.S:发现使用[code]会过滤某些特殊文本:funk: ,从而导致修改失败。附上该方法的文本附件好了。

admin 发表于 2008-6-25 13:15

回复 1# horseluke 的帖子

主题分类 两个版本基本是保持兼容的。这个插件应当是可以正常使用。

yuehong 发表于 2008-6-26 16:15

不错,谢谢。。。:handshake :handshake

jinshuo 发表于 2008-9-30 14:32

<!--{if $forum['ismoderator']}--><a href="forumdisplay.php?fid=$fid&amp;filter=type&amp;typeid=0">未分类</a><!--{/if}-->

[[i] 本帖最后由 jinshuo 于 2008-9-30 15:05 编辑 [/i]]

页: [1]

Powered by Discuz! Archiver 6.1.0F  © 2001-2007 Comsenz Inc.