找回密码
 ╱人◕‿‿◕人╲订下契约(注册新用户)

QQ登录

只需一步,快速开始

查看: 247|回复: 4

修复移动版块帖子时,隐藏版块不显示问题

  [复制链接]

修复移动版块帖子时,隐藏版块不显示问题

  [复制链接]

该用户从未签到

84

主题

15

好友

1万

积分

第一章

红叶知弦

积分
16824
绯樱月姬

84

主题

15

好友

1万

积分

第一章

红叶知弦

积分
16824
2013-6-17 02:40:05 | 显示全部楼层 |阅读模式

╱人◕‿‿◕人╲定下契约

您需要 登录 才可以下载或查看,没有账号?╱人◕‿‿◕人╲订下契约(注册新用户)

×
本帖最后由 绯樱月姬 于 2013-6-17 03:48 编辑

通过最重的参数传递和调用,将调用./template/default/forum/topicadmin.htm文件,根据动作参数
<!--{elseif$_G['gp_optgroup'] == 2}-->
进入下面的执行代码,显示版块选择框:
  • [mw_shl_code=php,true]<!--{elseif $_G['gp_optgroup'] == 2}-->
    <div class="tplw">
    <!--{if $operation != 'type'}-->
    <input type="hidden" name="operations[]" value="move" />
    <p class="mbn tahfx">
    {lang admin_target}: <select name="moveto" id="moveto" class="ps vm" -no-onchange="ajaxget('forum.php?mod=ajax&action=getthreadtypes&fid=' + this.value, 'threadtypes');if(this.value) {$('moveext').style.display='';} else {$('moveext').style.display='none';}">
    $forumselect
    </select>
    </p>
    <p class="mbn tahfx">
    {lang admin_targettype}: <span id="threadtypes"><select name="threadtypeid" class="ps vm"><option value="0" /></option></select></span>
    </p>
    <ul class="llst" id="moveext" style="display:none;margin:5px 0;">
    <li class="wide"><label><input type="radio" name="type" class="pr" value="normal" checked="checked" />{lang admin_move}</label></li>
    <li class="wide"><label><input type="radio" name="type" class="pr" value="redirect" />{lang admin_move_hold}</label></li>
    </ul>
    <!--{else}-->
    <!--{if $typeselect}-->
    <input type="hidden" name="operations[]" value="type" />
    <p>{lang types}: $typeselect</p>
    <!--{else}-->
    {lang admin_type_msg}<!--{eval $hiddensubmit = true;}-->
    <!--{/if}-->
    <!--{/if}-->
    </div>[/mw_shl_code]




这里的$forumselect就是封装的论坛版块的选项,我们只要让这个变量包含隐藏的版块即可,找到topicadmin_moderate.php
  • [mw_shl_code=php,true]} elseif($_G['gp_optgroup'] == 2 || $_G['gp_optgroup'] == 5) {
    require_once libfile('function/forumlist');
    $forumselect = forumselect(FALSE, 0, $threadlist[$_G['tid']]['fid']);
    $typeselect = typeselect($single ? $threadlist[$_G['tid']]['typeid'] : 0);[/mw_shl_code]




这里对$forumselect做了封装,在function_forumlist.php找到forumselect函数:
  • [mw_shl_code=php,true]foreach($forumcache as $forum) {
    if(!$forum['status'] && !$showhide) {
    continue;
    }
    if($selectedfid) {
    if(!is_array($selectedfid)) {
    $selected = $selectedfid == $forum['fid'] ? ' selected' : '';
    } else {
    $selected = in_array($forum['fid'], $selectedfid) ? ' selected' : '';
    }
    }
    if($forum['type'] == 'group') {
    if($arrayformat) {
    $forumlist[$forum['fid']]['name'] = $forum['name'];
    } else {
    $forumlist .= $groupselectable ? '<option value="'.($evalue ? 'gid_' : '').$forum['fid'].'" class="bold">--'.$forum['name'].'</option>' : '</optgroup><optgroup label="--'.$forum['name'].'">';
    }
    $visible[$forum['fid']] = true;
    } elseif($forum['type'] == 'forum' && isset($visible[$forum['fup']]) && (!$forum['viewperm'] || ($forum['viewperm'] && forumperm($forum['viewperm'])) || strstr($forum['users'], "\t$_G[uid]\t")) && (!$special || (substr($forum['allowpostspecial'], -$special, 1)))) {
    if($arrayformat) {
    $forumlist[$forum['fup']]['sub'][$forum['fid']] = $forum['name'];
    } else {
    $forumlist .= '<option value="'.($evalue ? 'fid_' : '').$forum['fid'].'"'.$selected.'>'.$forum['name'].'</option>';
    }
    $visible[$forum['fid']] = true;
    } elseif(!$arrayformat && $forum['type'] == 'sub' && isset($visible[$forum['fup']]) && (!$forum['viewperm'] || ($forum['viewperm'] && forumperm($forum['viewperm'])) || strstr($forum['users'], "\t$_G[uid]\t")) && (!$special || substr($forum['allowpostspecial'], -$special, 1))) {
    $forumlist .= '<option value="'.($evalue ? 'fid_' : '').$forum['fid'].'"'.$selected.'>      '.$forum['name'].'</option>';
    }
    }[/mw_shl_code]




这一部分详细的判断了根据如何条件对版块列表的变量进行的封装。
[mw_shl_code=php,true]if(!$forum['status'] && !$showhide){
continue;
}[/mw_shl_code]
这里对隐藏的版块进行了进行了忽略操作,所以我们直接注释掉跳过的continue;

改为

[mw_shl_code=php,true]if(!$forum['status'] && !$showhide){
//      continue;
}[/mw_shl_code]
然后此段程序
[mw_shl_code=php,true]elseif(!$arrayformat && $forum['type'] == 'sub' && isset($visible[$forum['fup']]) && (!$forum['viewperm'] || ($forum['viewperm'] && forumperm($forum['viewperm'])) || strstr($forum['users'], "\t$_G[uid]\t")) && (!$special || substr($forum['allowpostspecial'], -$special, 1))) {
$forumlist .= '<option value="'.($evalue ? 'fid_' : '').$forum['fid'].'"'.$selected.'>      '.$forum['name'].'</option>';
}[/mw_shl_code]
将子版块类型的版块进行了显隐判断,如果是显隐状态为现实,则加入$forumlist列表封装,我们这里直接将此判断条件去除,即可:
  • [mw_shl_code=php,true]elseif(!$arrayformat && $forum['type'] == 'sub' &&  (!$forum['viewperm'] || ($forum['viewperm'] && forumperm($forum['viewperm'])) || strstr($forum['users'], "\t$_G[uid]\t")) && (!$special || substr($forum['allowpostspecial'], -$special, 1))) {[/mw_shl_code]


修改此两处,就可以显示出隐藏的版块








will you kill someone you love,because of love
回复

使用道具 举报

签到天数: 1 天

连续签到: 1 天

[LV.1]初来乍到

230

主题

329

好友

7万

积分

绅(hen)士(tai)

千言万语汇成一句“呵呵”

积分
73848
SATA

230

主题

329

好友

7万

积分

绅(hen)士(tai)

千言万语汇成一句“呵呵”

积分
73848
2013-6-17 22:15:13 | 显示全部楼层
OJZ,怎么只看到学姐在这折腾

点评

不要說出來(捶地  发表于 2013-6-18 01:26
我的愉悦来源我手中绽放的美丽
回复 支持 反对

使用道具 举报

该用户从未签到

113

主题

252

好友

2万

积分

第一章

(〝▼皿▼)离开草莓牛奶就会血槽放空的太二路人 (▼皿▼#)

积分
28652
垠吹路

113

主题

252

好友

2万

积分

第一章

(〝▼皿▼)离开草莓牛奶就会血槽放空的太二路人 (▼皿▼#)

积分
28652
2013-7-15 01:31:40 | 显示全部楼层
看的我晕了  不过试一试……  我会说我只是为了找个领工资的地方…… 我容易么我……
本人已挂  没事勿找
回复 支持 反对

使用道具 举报

签到天数: 1 天

连续签到: 1 天

[LV.1]初来乍到

358

主题

427

好友

7万

积分

第四章

围着弹丸版杀转的技宅谜之NPC

积分
76744
驴老子

358

主题

427

好友

7万

积分

第四章

围着弹丸版杀转的技宅谜之NPC

积分
76744
2013-7-15 11:17:45 | 显示全部楼层
救命 好高端_(:3」∠)_但是隐藏版块我好像集齐了3块QUQQ

点评

握爪……  发表于 2013-7-16 00:00
签名被小宅喵吞掉了~~~~(>_<)~~~~
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

14

好友

2922

积分

Continue

积分
2922
无口面瘫君

1

主题

14

好友

2922

积分

Continue

积分
2922
2013-8-15 20:55:18 | 显示全部楼层
【一个星期内共计回帖30发以上即可完成。纯水会被一刀切的哦,祝愿新宅能够在技术宅社区玩得愉快(* ̄︶ ̄)y 】
我是来完成任务的,华丽丽的无视我吧
签名被小宅喵吞掉了~~~~(>_<)~~~~
回复 支持 反对

使用道具 举报

本版积分规则

小黑屋|技术宅(基宅) | 粤ICP备18082987号-1 | 浙公网安备 33010902001746号

GMT+8, 2024-5-15 04:01 , Processed in 1.516654 second(s), 25 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复