成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

Discuz論壇的SEO優(yōu)化方案

設discuz 已啟用偽靜態(tài)功能,使用5.5.5GBK 版本;1、meta,content 優(yōu)化2、內容頁的網頁復制問題3、robots.txt 使用及其它更新discuz5.5的robots.txt

設discuz 已啟用偽靜態(tài)功能,使用5.5.5GBK 版本;

1、meta,content 優(yōu)化

2、內容頁的網頁復制問題

3、robots.txt 使用及其它

更新

discuz5.5的robots.txt 問題

DZ 禁止一個版面帖子的收錄的補充

一、meta 的優(yōu)化

discuz 的后臺可以對meta 信息進行設置,甚至可以添加自己的頭部信息,但它的設置都是針對于所有頁面的,全部頁面都擁有相同的keywords 和description 是(億推英文TuiGuang123_COM)所不贊成的。

方案一:刪除meta

修改頁頭模板文件templatesdefaultheader.htm :將meta 的keywords 和description 標簽刪除。

這兩個標簽作用很小了,而且還有discuz 自帶的一些無用信息,用得不好反而會有壞作用,因此寧缺勿濫。

方案二:定制meta

本部分實現了將內容頁keywords 設為帖子標題,description 為內容前1字;也實現了主頁與各版列表頁meta 的單獨設置(不同版的不同,同一版各列表頁相同)。

1. 修改頁頭模板文件templates?faultheader.htm:將meta 的keywords 和description 標簽改為如下形式

這里的$seokeywords、$seodescription就是后臺設置的那個值,下面說怎么定制這個值;{$metakeywords}是奇虎的關鍵字,留下以后處理

2. 內容頁(viewthread )設置keywords 為帖子標題,description 為內容前1字

2.1修改viewthread.php 文件:

在includetemplate('viewthread');(更新:dz5.5為

,

iincludetemplate($iscircle?'supesite_viewthread':'viewthread');)語句的上面加入一行:

require_onceDISCUZ_ROOT.'.includebmt.thread.inc.php';

2.2創(chuàng)建includebmt.thread.inc.php 文件,內容為

if(!defined('IN_DISCUZ')){exit('AccessDenied');}

$seokeywords=strip_tags($thread['subject']);關鍵字設為帖子的標題

(已更新:nethome提出問題,當啟用主題分類并允許按類別瀏覽時,原來代碼會有問題。所以加了標簽過濾, 本來在viewthread.php 中改更好,為以后升級方便,還是放在這里吧,subject 很短,不會影響效率)

,

if(!defined('IN_DISCUZ')){exit('AccessDenied');}

$seokeywords=$forum['name'];

$seodescription=$forum['description'];

switch($forum['fid']){

case1:此數字為版的ID 號,不同版設置不同的meta

$seokeywords='key1,key2,...';

$seodescription='xxxxxxxxxxxx';

break;

case2:

$seokeywords='key1,key2,...';

$seodescription='xxxxxxxxxxxx';

break;

}

?>

更新:一般情況下可以不用switch 和case ,列表頁的關鍵字為版名,說明為版的說明, 若要對某個版設置特殊的關鍵字和說明,可以設置case 。這樣解決了版面很多時要設置很多case 語句,加快了程序執(zhí)行速度(不了解php ,JAVA 的case 進行了優(yōu)化,執(zhí)行很快)

使用修改文件來實現,每版的meta 改起來不方便,感覺有些弱智,呵呵。但沒有改數據庫,用了兩個單獨的文件,修改了兩個文件也很簡單,這樣升級或遷移更方便吧

case 雖然多了一些,但比起讀數據庫的記錄,速度應該快很多

4. 主頁meta

在后臺設置即可。(如果2、3不做,則meta 也同主頁)

content 的優(yōu)化

discuz 有個archiver ,一是URL 容易收錄,二是頁面比較干靜,還有description 會從正文中取內容,但archiver 沒有對內容中[b ][url ]之類的解析,那些標簽起不到作用,原樣顯示還會增加垃圾信息。

,

本部分主要做兩方面的優(yōu)化,一是去除內容頁的無用信息,二是給標題加上

。加上偽靜態(tài)和上篇meta 的優(yōu)化,效果就超過了archiver ,因此可以在后臺禁用它,還減少了復制網頁。

實施方案

1. 隱藏內容頁(viewthread )中的無用信息:

修改內容頁模板文件templatesdefaultviewthread.htm :

將要隱藏的信息包含起來。

準確的說是當游客(bots)訪問時,隱藏那些信息,當用戶登錄后是正常的,所以不影響使用。

這些信息主要指的是左側用戶信息欄、(資料個人空間主頁短消息等等)、用戶的簽名(隱藏后不怕簽名的內容影響正文,鏈接也不起作用了:P)

以住相關文章

2. 為標題加上

標簽

修改內容頁模板文件templatesdefaultviewthread.htm :

$post[subject]

替換為

$post[subject]

定制“本帖最后由XXX 于xxxxxx 編輯”內容

修改文件templatesdefaultmisc.lang.php :將下面兩行改成您喜歡的內容: 'post_edit'=>'nn[[i]]本帖最后由$editor于$edittime編輯[i]]',

'post_edit_regexp'=>'n{2}[[i]本帖最后由.*?于.*?編輯[i]]$s', 比如我改成[網站名URLxxx 于xxxx 編輯]。改程序無聊時的自娛,呵呵

注意上下兩個表達式要匹配。為了防止解析方括號是全角,不要復制后在文件中查找。

二、內容頁的網頁復制問題

看看內容頁的URL 大家就知道了:thread-(tid)-(page)-(forumdisplaypage),可以看出最后一節(jié)表示的是此帖在列表頁的第幾頁。所以,當您的帖子越來越多,

,

這個帖就會由第一頁到第二頁... ,它的URL 就會不斷的變化。其實打開一個列表頁就可以看出來,第2頁的帖子鏈接的最后數字都是2,第3頁的都是3, 只是很少注意它。我是在SE 的收錄中發(fā)現復制網頁越來越多,才對最后的數字注意的。 解決方法

修改forumdisplay.php 文件:

將$extra=rawurlencode("page=$page$forumdisplayadd");語句替換為 $extra=rawurlencode("page=1$forumdisplayadd");

語句中的page 就是forumdisplaypage ,這樣改后不管帖子在列表頁的第幾頁,這個數都是1。

功能損失:當用戶編輯帖子或版主管理帖子后,有個提示跳轉頁:選擇轉入列表頁還是主題頁,這時轉入列表頁的話,只能轉到列表頁第一頁, 而不管您原來停留在第幾頁。

redirect 的31重定向

在discuz 論壇中可以看到類似redirect.php?tid=xxx&goto=lastpost#lastpost這樣的鏈接,它的功能是實現“最新發(fā)表、最后發(fā)表、上一主題、下一主題“功能,僅這一個功能就可以給同一個內容頁造成四份復制網頁,因此將這樣的鏈接31永久重定向到帖子的靜態(tài)地址。

解決方法

修改redirect.php 文件:

將前兩個require_onceDISCUZ_ROOT.'.viewthread.php';語句替換為 $bmt_url='Location:thread-'.$tid.'-'.$page.'-1';

header('HTTP1.131MovedPermanently');

header($bmt_url);

將后兩個require_onceDISCUZ_ROOT.'.viewthread.php';語句替換為 $bmt_url='Location:thread-'.$tid.'-1-1';

header('HTTP1.131MovedPermanently');

header($bmt_url);

dz5.5的引用處也有個跳轉,也可以做31:

,

dheader("Location:viewthread.php?tid=$post[tid]&page=$page#pid$pid");替換為

$bmt_url='Location:thread-'.$post[tid].'-'.$page.'-1#pid'.$pid; header('HTTP1.131MovedPermanently');

header($bmt_url);

***注意此處直接轉到了靜態(tài)地址,沒有做判斷是否開啟偽靜態(tài)功能,所以不開啟會有問題

功能損失:轉向到靜態(tài)地址后,動態(tài)地址中類似#lastpost的錨點將無法起作用了,可能要手動滾屏了

? 好像沒有影響錨點

提示信息頁的網頁復制

這個問題和內容頁也有著很大的關系,呵呵。如管理員設置允許游客瀏覽列表,而禁止瀏覽內容時,這些內容頁都將返回一沒有權限的提示信息頁,但它們的URL 是不同的,這樣就形成了嚴重的網頁復制,此外還有其它形成的無權操作等。別一種提示信息如帖子不存在等,數量大了也會形成網頁復制。這兩種提示信息,都是通過showmessage 函數分別調用nopermission.htm 和showmessage.htm 兩個模板實現的。

解決方法

1. 創(chuàng)建另一個頭模板文件templatesdefaultheader_disbots.htm

內容同header.htm 文件,但加入metarobot 標簽,如下

2. 分別修改templatesdefaultnopermission.htm 和

templatesdefaultshowmessage.htm 文件

將它們第一行的{templateheader}替換為{templateheader_disbots} 雖然對metarobots 標簽支持的不是很廣泛,但這是比較省事的方法

因為是提示信息頁,用31來實現的話,還要傳給轉到的頁好多信息,修改起來比較麻煩

三、robots.txt 使用

User-agent:*

,

#禁止一個版面的收錄

#如果有個水版,不想禁止游客權限,也不想SE 收錄,已免影響網站質量,可以用如下方法

Disallow:forum-1-

#數字即為要禁止版塊的ID 。

#注意數字最后的-不要省略,否則連ID 為11,12等1開頭的版都禁了

[更新]補充方法:再給內容頁加metarobot 禁止

#再禁網頁復制

Disallow:viewthread.php

#這個是內容頁的動態(tài)形式,前面對偽靜態(tài)做了優(yōu)化并修改了很多的復制網頁,因此這里動態(tài)形式如打印頁等一定要禁止

Disallow:forumdisplay.php

#這個要慎重:列表頁的動態(tài)形式,還包括精華、活動、投票等形式。我發(fā)現5. 的靜態(tài)化不徹底,它的上一頁下一頁翻頁仍是動態(tài),這樣如果禁止了,十頁之后的內容就不能通這索引了。所以如果您站內的交差鏈接不豐富的話,不要在此禁止,以免影響收錄。

hekaiyu 說沒有這個問題,去官方看了下5.5的確沒問題(也許我的5. 本來沒問題,也許官方在新版本中完善了正則表達式的替換規(guī)則) ,這樣更好了,禁止它,又干凈了好多

#禁止其它無用內容

Disallow:profile

#用戶信息,不知為什么discuz 也靜態(tài)化了,一律禁止

Disallow:relatethread

Disallow:post

Disallow:blog

Disallow:member

Disallow:misc

Disallow:faq

Disallow:my

,

Disallow:pm

Disallow:digest

Disallow:status

#......等等

#-----robots.txtend------

[更新]dz5.5的robots.txt 后部分給出的Disallow:post.php等是不合規(guī)范的,一定要在前面加上"" 。>>詳細說明

首頁URL 問題

后臺基本設置->首頁文件名如果不設置,會默認為index.php 。所以站內到首頁的鏈接為形式為http:domainindex.php。而我們一般引用論壇首頁或交換鏈接的形式一般是domain 。實際是一樣的,但SE 可認為是兩個URL, 而且一個擁有很多的內部鏈接,一個擁有較多的外部鏈接,所以哪個被降級都不是好事情,最好統(tǒng)一起來。這里的修改目標是http:domain的形式。

1. 進入后臺,基本設置->首面文件名設置為:

2. 修改文件member.php 將header("Location:{$boardurl}".$indexname);替換為

if($indexname==''){

header("Location:{$boardurl}");

}else{

header("Location:{$boardurl}".$indexname);

}

[更新]dz5.5為dheader

此修改處的功能是清除cookies 后返回到首頁,如不修改域名后就有兩個。暫時未發(fā)現使用當首頁文件名的其它問題

結束

除了文件的修改,有些地方要配合后臺設置,前面都提到了,這里總結一下。主要有:1.URL 靜態(tài)化,只啟用普通頁面靜態(tài)化就可以了;2. 不要啟用Archiver 功能;3. 后臺的keywords 和description 設置只是針對首頁的(如果您沒做列表頁和內容頁的meta 修改則也應用到它們);4. 后臺首頁文件名為(當然您也可以設

,

置自己特定的)

億推英文新聞稿推廣TuiGuang123, 億推Tuiguang123英文新聞稿推廣, 億推英文新聞稿代發(fā)TuiGuang123, 億推Tuiguang123英文新聞稿代發(fā), 億推英文新聞稿服務TuiGuang123, 億推Tuiguang123英文新聞稿服務。億推(TuiGuang123_COM) 提供標準化的英文軟文發(fā)布、英文新聞稿撰寫服務。專業(yè)的英語本土軟文寫手,100篇英文軟文可在一周內完成。歡迎國內外貿客戶或外貿推廣合作伙伴聯系業(yè)務共謀發(fā)展。聯系方法,在百度搜索“億推英文推廣”或直接訪問Tuiguang_COM

標簽: