在《百度搜索引擎优化指南》2.1.2 网站结构里提到,合理的网站结构应该是一个扁平的树型网状结构。而且大家都应该知道权重方面:二级域名>目录>静态页>动态页
那么什么是扁平的树型网状结构呢?
例如:首页:http://www.yuanmawu.com
栏目页:http://www.yuanmawu.com/discuzx/
内容页:http://www.yuanmawu.com/discuzx/1/
像这样的页面就是一个“扁平的树型网状结构”。每增加一个内容页,都会给栏目页增加一定的权重。像地宝网的URL就是很规范的,整站URL目录化,目录层次不超过2个。对于SEO是很有利的。
那么现在discuz官方的地址是怎么样的呢?
首页:http://www.discuz.net/forum.php
栏目页:http://www.discuz.net/forum-21-1.html
内容页http://www.discuz.net/thread-2281986-1-1.html
这样的URL是分散的,并不是网状结构,不利于权重的传递。
在这里源码屋给大家提供一个方法,通过伪静态方法来实现discuzx的地址目录化(目前只支持Apache服务器)。
首先
打开source\function下的function_core.php
找到
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}/{page}
在"论坛主题内容页"的格式中填写:{fid}/m{tid}/{page}
然后下载.htaccess文件,传到网站根目录
然后工具,更新缓存,即实现了版块目录化,贴子目录化
在"论坛"-"版块管理"中的"绑定别名"即是版块目录名:
如:魔客吧官网的 discuzx模板 版块中的"绑定别名"为"discuzx",那么访问地址就是:http://www.yuanmawu.com/discuzx/
提示:请自行按教程进行设置,本人很忙,无法一一指导,也不接受收费设置,一切自己按教程来设置,实在抱歉!
|