当前位置:主页 > 网页教程 > 网站程序 > Discuz!教程 > 内容欢迎大家投稿

discuz首页只显示帖子列表 去掉板块

时间:2015-02-24 09:47来源:未知 作者:大宝库 点击:读取中
阅读工具:字体:

 本教程我们来学习discuz的首页如何实现只显示论坛列表,把版块信息去掉,这种风格比较合适小站长论坛,喜欢的朋友可以参考一下。
  根目录下找到forum.php文件,搜索:
  define('CURSCRIPT', 'forum');
  下一行插入:
  $_GET +=array('mod'=>'forumdisplay','fid'=>6);
  PS:'fid'=>6中的“6”代表版块的FID。
  例如:要实现为单版的版块地址为:forum.php?mod=forumdisplay&fid=44,则:将上句中的“6”改为“44”即可。
  扩展知识:修改discuz首页
  第一,将forum.php设为网站的默认首页,并设为第一顺序。
  第二,将网站导航、面包屑导航等里面的forum.php的链接直接去掉,修改成论坛的默认网址。比如我将指向 http://***.com/bbs/forum.php 的链接直接修改成http://***.com/bbs/ 。
  首先,修改网站的默认首页为forum.php,这样输入网址就不会自动做跳转了。
  修改网站的默认首页方法很简单,我这里就不再赘述了。如果你用的是Linux空间,而且支持.htaccess的话,那么可以直接在.htaccess里添加这样一句:
  #默认首页设置
  DirectoryIndex forum.php index.html index.php default.html
  但是修改之后,有一个问题,那就是Discuz X2论坛个人空间有一个短网址,就是类似于 http://***.com/bbs/?2 这样的网址。所以需要做一个跳转,将个人空间的短网址跳转到个人空间的静态地址 http://***.com/bbs/space-uid-2.html 。
  打开forum.php,在找到:
  require './source/function/function_forum.php';
  在下面添加如下代码:
  if(!empty($_SERVER['QUERY_STRING']) && is_numeric($_SERVER['QUERY_STRING'])) {
  $uid = $_SERVER['QUERY_STRING'];
  $uurl= "http://***.com/bbs/space-uid-".$uid.".html";
  header("HTTP/1.1 301 Moved Permanently");
  header("location: $uurl");
  exit();
  }
  将”http://***.com/bbs/space-uid-".$uid.".html”替换为自己的个人空间地址就可以了。这样如果输入类似于 http://***.com/bbs/?2 这样的网址,就会301跳转到个人空间的静态地址 http://***.com/bbs/space-uid-2.html 。
  其次,将面包屑导航中的forum.php去掉。
  Discuz的面包屑导航出现在三个地方,帖子页面、帖子列表页和发帖页。它们对应的文件是不同的。
  1.主题列表页:找到sourcemoduleforum目录下forum_forumdisplay.php文件,直接在源文件中搜索替换,搜索,修改为论坛的相对地址或者绝对地址,比如我的论坛修改为或者修改为论坛的绝对地址。
  2.帖子页面:找到sourcemoduleforum目录下forum_viewthread.php文件。直接在源文件中搜索替换,搜索,修改为论坛的相对地址或者绝对地址。
  3.发帖页面:找到sourcemoduleforum目录下forum_post.php文件,同样在源文件中搜索,将其替换为论坛绝对地址。
  这样Discuz X2论坛的默认首页和面包屑导航修改完毕,折腾还在继续……
  这样大家就可以修改任何模式作为首页了,而不仅仅是无版块帖子列表

(责任编辑:大宝库)


------分隔线----------------------------
推荐内容
赞助商链接
赞助商链接