Discuz!X2程序为例,目前比较流行的方式是直接在forum.php中查找以下代码:- define('APPTYPEID', 2);
- define('CURSCRIPT', 'forum');
复制代码 然后在其后加入以下代码:- $_GET +=array('mod'=>'forumdisplay','fid'=>200);
复制代码 备注:这里的fid值即为版块的ID。
Discuz!X2有一个比较好的功能,就是版块关联,即我们可以把许多版块的帖子集中显示到某一个版块。这样,只要我们把上述方法中的fid填成聚合版块的id,就能达到展现全站帖子的效果了。
设置方法:后台---论坛---“相应版块”---扩展设置---关联群组/版块,填写需要被关联的版块或者群组的fid即可。
1.新建一个版块,得到版块id(假如为200);
2.在网站根目录新建一个tt.php文件,这个文件的作用就是指向聚合帖子的版块,这样即使把tt.php设为网站首页,也不会影响手机版默认的访问界面(可以直接复制forum.php,重命名为tt.php,加上之前说的那句代码即可);
3.对风格目录:template/your/forum/forumdisplay.htm文件做修改,这里主要提供修改思路:- <!--{if $_G[fid] == 200}-->
- fid=200的版块才会显示的模板
- <!--{else}-->
- 其他版块显示的模板
- <!--{/if}-->
复制代码 (1)使用记事本或者编辑工具分别打开discuz.htm和forumdisplay.htm,找到它们各自对应的面包屑导航代码;
discuz.htm中:- <div id="pt" class="bm cl">
- <!--{if empty($gid) && $announcements}-->
- <div class="y">
- <div id="an">
- <dl class="cl">
- <dt class="z xw1">{lang announcements}: </dt>
- <dd>
- <div id="anc"><ul id="ancl">$announcements</ul></div>
- </dd>
- </dl>
- </div>
- <script type="text/javascript">announcement();</script>
- </div>
- <!--{/if}-->
- <div class="z">
- <a href="./" class="nvhm" title="{lang homepage}">$_G[setting][bbname]</a><em>»</em><a href="forum.php">{$_G[setting][navs][2][navname]}</a>$navigation
- </div>
- <div class="z"><!--{hook/index_status_extra}--></div>
- </div>
复制代码 forumdisplay.htm中:- <div id="pt" class="bm cl">
- <div class="z">
- <a href="./" class="nvhm" title="{lang homepage}">$_G[setting][bbname]</a> $navigation
- </div>
- </div>
复制代码 (2)我们可以在forumdisplay.htm中面包屑导航div的前面加入:- <!--{if $_G[fid] == 200}-->
- <div id="pt" class="bm cl">
- /*要加入的discuz.htm的面包屑,如果直接去掉,则留空*/
- </div>
- <!--{else}-->
复制代码 (3)再在forumdisplay.htm中面包屑导航div的后面加入:- <div id="pt" class="bm cl">
- /*forumdisplay.htm自己的面包屑*/
- </div>
- <!--{/if}-->
复制代码 (4)去掉版块介绍那部分的方法:找到forumdisplay.htm 中这段代码前面加上:- <!--{if $_G[fid] == 2}-->
- <!--{else}-->
复制代码 代码后面加上:这样,实际上就已经完成了if...else...的操作了。
但是,需要注意的是,把discuz.htm里的div移植到forumdisplay.htm中,变量的调用可能会读取不成功,有函数调用功底的站长可以重新写代码在这里调用;面包屑导航的样式也会乱(因为css对它们的控制不同)。所以稍有css功底的请自行重定义修改后个标签的css样式即可。
本人新手,不太懂数据库的操作,所以小站采用的是规避的方式,即直接在单版去掉面包屑导航的显示。
去掉的方法其实也很简单,将和之间的代码全部删除即可,意思也不难理解。
至于论坛数据统计,完全可以自己添加DIY调用的嘛。(如文理人BBS现在的方式)
|