在 《百度搜尋引擎最佳化指南》 2.1.2 網站結構裡提到,合理的網站結構應該是一個扁平的樹型網狀結構。而且大家都應該知道權重方面:二級域名> 目錄> 靜態頁> 動態頁
那麼什麼是扁平的樹型網狀結構呢?
例如:首頁:http://www.weixiaoduo.com
欄目頁:https://www.weixiaoduo.com/Discuz/
內容頁:https://www.weixiaoduo.com/Discuz/123/
像這樣的頁面就是一個 「扁平的樹型網狀結構」 。每增加一個內容頁,都會給欄目頁增加一定的權重。像地寶網的 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 是分散的,並不是網狀結構,不利於權重的傳遞。
在這裡薇曉朵給大家提供一個方法,透過偽靜態方法來實現 Discuz X 的地址目錄化 (目前只支援 Apache 伺服器) 。
首先
開啟 sourcefunction 下的 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 檔案,傳到網站根目錄
然後工具,更新快取,即實現了版塊目錄化,貼子目錄化
在"論壇"-"版塊管理"中的"繫結別名"即是版塊目錄名:
如:薇曉朵官網的 Discuz X 模板 版塊中的"繫結別名"為"Discuz X",那麼訪問地址就是:https://www.weixiaoduo.com/Discuz X/
提示:請自行按教程進行設定,本人很忙,無法一一指導,也不接受收費設定,一切自己按教程來設定,實在抱歉!