如何为 Discuz,X2 配置伪静态规则
首先
打开source\function下的function_corephp
找到
if($type ==
'forum_forumdisplay') {
list(,,, $fid, $page, $extra) =
func_get_args();
$r = array(
'{fid}' =>
empty($_G['setting']['forumkeys'][$fid]) $fid :
$_G['setting']['forumkeys'][$fid],
'{page}' => $page $page :
1,
);
} elseif($type == 'forum_viewthread') {
list(,,, $tid, $page, $prevpage, $extra) = func_get_args();
$r =
array(
'{tid}' => $tid,
'{page}' => $page
$page : 1,
'{prevpage}' => $prevpage && !IS_ROBOT
$prevpage : 1,
);
改为
if($type == 'forum_forumdisplay') {
list(,,, $fid, $page,
$extra) = func_get_args();
$r = array(
'{fid}' =>
empty($_G['setting']['forumkeys'][$fid]) $fid :
$_G['setting']['forumkeys'][$fid],
'{page}' => $page ,
);
} elseif($type == 'forum_viewthread') {
list(,,, $tid, $page, $prevpage, $extra) = func_get_args();
$fid =
DB::result_first("SELECT fid FROM "DB::table('forum_thread')" WHERE tid =
'$tid'");
$r = array(
'{fid}' =>
empty($_G['setting']['forumkeys'][$fid]) $fid :
$_G['setting']['forumkeys'][$fid],
'{tid}' => $tid,
'{page}' => $page ,
'{prevpage}' => $prevpage
&& !IS_ROBOT $prevpage : 1,
);
然后进入网站后吧->''seo设置"->"url静态化"
在"论坛主题内容页"的格式中填写:{fid}/m{tid}/{page}
然后工具,更新缓存,即实现了版块目录化,贴子目录化
在"论坛"-"版块管理"中的"绑定别名"即是版块目录名
把下面这段代码复制到你的htaccess文件里,如果没有就新建一个,放到网站跟目录
# 将 RewriteEngine 模式打开
RewriteEngine On
# 修改以下语句中的RewriteBase 后的地址为你的论坛目录地址,如果程序放在根目录中,为 /,如果是相对论坛根目录是其他目录则写为 /{目录名},如:在bbs 目录下,则写为 /bbs
RewriteBase /
# Rewrite 系统规则请勿修改
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^topic-(+)\html$ portalphpmod=topic&topic=$1&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^article-([0-9]+)-([0-9]+)\html$ portalphpmod=view&aid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^(\w+)/([0-9]+)$ forumphpmod=forumdisplay&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^thread-([0-9]+)-([0-9]+)\html$ forumphpmod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^group-([0-9]+)-([0-9]+)\html$ forumphpmod=group&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^space-(username|uid)-(+)\html$ homephpmod=space&$1=$2&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^([a-z]+)-(+)\html$ $1phprewrite=$2&%1
RewriteCond %{QUERY_STRING} ^()$
RewriteRule forum-([0-9a-z_]+)-([0-9]+)\html$ forumphpmod=forumdisplay&fid=$1&page=$2&%1
## 保留前面的部分可以不影响已经被搜索引擎收录的页面
RewriteCond %{QUERY_STRING} ^()$
RewriteRule /([0-9]+)(/([0-9]+))(/)$ forumphpmod=viewthread&tid=$1&extra=page\%3D$5&page=$3&%1 [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^()$
RewriteRule ^([0-9a-z_]+)(/([0-9]+))(/)$ forumphpmod=forumdisplay&fid=$1&page=$3&%1 [L,NC]
一、后台 论坛 板块 编辑(这里您想设置那个板块的主题分类,那么您直接点击这个板块后面的编辑)二、其他 主题分类 启用主题分类 设置提醒:1发帖必须归类:是否强制用户发表新主题时必须选择分类 2允许按类别浏览:用户是否可以按照主题分类筛选浏览内容3
0条评论