discuz論壇程序的SEO方面優(yōu)化詳細(xì)操作_第1頁
discuz論壇程序的SEO方面優(yōu)化詳細(xì)操作_第2頁
discuz論壇程序的SEO方面優(yōu)化詳細(xì)操作_第3頁
discuz論壇程序的SEO方面優(yōu)化詳細(xì)操作_第4頁
discuz論壇程序的SEO方面優(yōu)化詳細(xì)操作_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、discuz!論壇SEOdiscuz!論壇基礎(chǔ)優(yōu)化實(shí)踐(一) meta,content 優(yōu)化meta的優(yōu)化(山東mba網(wǎng)提供)discuz的后臺可以對meta信息進(jìn)行設(shè)置,甚至可以添加自己的頭部信息,但它的設(shè)置都是針對于所有頁面的,全部頁面都擁有相同的keywords和description是SEO所不贊成的。方案一:刪除meta修改頁頭模板文件 templates/default/header.htm:將meta的keywords和description標(biāo)簽刪除。這兩個標(biāo)簽作用很小了,而且還有discuz自帶的一些無用信息,用得不好反而會有壞作用,因此寧缺勿濫。方案二:定制meta本部分實(shí)現(xiàn)

2、了將內(nèi)容頁keywords設(shè)為帖子標(biāo)題,description為內(nèi)容前100字;也實(shí)現(xiàn)了主頁與各版列表頁meta的單獨(dú)設(shè)置(不同版的不同,同一版各列表頁相同)。1.修改頁頭模板文件 templatesdefaultheader.htm:將meta的keywords和description標(biāo)簽改為如下形式這里的$seokeywords、$seodescription就是后臺設(shè)置的那個值,下面說怎么定制這個值;$metakeywords是奇虎的關(guān)鍵字,留下以后處理2.內(nèi)容頁(viewthread)設(shè)置keywords為帖子標(biāo)題,description為內(nèi)容前100字2.1修改 viewthread

3、.php 文件:在 include template(viewthread); (更新:dz5.5為iinclude template($iscircle ? supesite_viewthread : viewthread); ) 語句的上面加入一行:require_once DISCUZ_ROOT./include/bmt.thread.inc.php;2.2創(chuàng)建 include/bmt.thread.inc.php 文件,內(nèi)容為*此處數(shù)字和個別函數(shù)適用于GBK版本最后一行作用是過濾內(nèi)容中的html,否則在meta中會引起語法錯誤。先是去除HTML標(biāo)簽,但因?yàn)檫@里是前100字,有可能htm

4、l標(biāo)簽已經(jīng)被截斷了,所以又用了htmlspecialchars轉(zhuǎn)義一下,有可能會有些垃圾信息。當(dāng)然也可以在截取之前用strip_tags去除html標(biāo)簽,可能效率會差了。*所以此處表達(dá)式您需要根據(jù)自己的情況修改。我目前用的是preg_replace( /xa1-xff/, , $seodescription ),即過濾漢字以外的所在內(nèi)容,但這樣會損失英文關(guān)鍵字。別外說明,此處數(shù)據(jù)都是viewthread.php已取好的,所以不會產(chǎn)生額外的數(shù)據(jù)庫操作,只是做了字符串處理,不會引響效率。3.列表頁(forumdisplay)設(shè)置不同的keywords和description3.1修改 forumd

5、isplay.php 文件,在 include template(forumdisplay); 語句上面添加require_once DISCUZ_ROOT./include/bmt.forum.inc.php;3.2創(chuàng)建 include/bmt.forum.inc.php 文件,內(nèi)容為/更新:一般情況下可以不用switch和case,列表頁的關(guān)鍵字為版名,說明為版的說明,若要對某個版設(shè)置特殊的關(guān)鍵字和說明,可以設(shè)置case。這樣解決了版面很多時要設(shè)置很多case語句,加快了程序執(zhí)行速度(不了解php,JAVA的case進(jìn)行了優(yōu)化,執(zhí)行很快)使用修改文件來實(shí)現(xiàn),每版的meta改起來不方便,感覺

6、有些弱智,呵呵。但沒有改數(shù)據(jù)庫,用了兩個單獨(dú)的文件,修改了兩個文件也很簡單,這樣升級或遷移更方便吧case雖然多了一些,但比起讀數(shù)據(jù)庫的記錄,速度應(yīng)該快很多4.主頁meta在后臺設(shè)置即可。(如果2、3不做,則meta也同主頁)content的優(yōu)化discuz有個archiver,一是URL容易收錄,二是頁面比較干靜,還有description會從正文中取內(nèi)容,但archiver沒有對內(nèi)容中burl之類的解析,那些標(biāo)簽起不到作用,原樣顯示還會增加垃圾信息。本部分主要做兩方面的優(yōu)化,一是去除內(nèi)容頁的無用信息,二是給標(biāo)題加上。加上偽靜態(tài)和上篇meta的優(yōu)化,效果就超過了archiver,因此可以在后

7、臺禁用它,還減少了復(fù)制網(wǎng)頁。實(shí)施方案1.隱藏內(nèi)容頁(viewthread)中的無用信息:修改內(nèi)容頁模板文件 templates/default/viewthread.htm:用 將要隱藏的信息包含起來。準(zhǔn)確的說是當(dāng)游客(bots)訪問時,隱藏那些信息,當(dāng)用戶登錄后是正常的,所以不影響使用。這些信息主要指的是左側(cè)用戶信息欄、(資料 個人空間 主頁 短消息 等等)、用戶的簽名(隱藏后不怕簽名的內(nèi)容影響正文,鏈接也不起作用了:P)2.為標(biāo)題加上標(biāo)簽修改內(nèi)容頁模板文件 templates/default/viewthread.htm:將 $postsubject 替換為$postsubjectdisc

8、uz基礎(chǔ)優(yōu)化實(shí)踐(二) 內(nèi)容頁的網(wǎng)頁復(fù)制問題內(nèi)容頁偽靜態(tài)URL不唯一看看內(nèi)容頁的URL大家就知道了:thread-(tid)-(page)-(forumdisplay page).html,可以看出最后一節(jié)表示的是此帖在列表頁的第幾頁。所以,當(dāng)您的帖子越來越多,這個帖就會由第一頁到第二頁.,它的URL就會不斷的變化。其實(shí)打開一個列表頁就可以看出來,第2頁的帖子鏈接的最后數(shù)字都是2,第3頁的都是3,只是很少注意它。我是在SE的收錄中發(fā)現(xiàn)復(fù)制網(wǎng)頁越來越多,才對最后的數(shù)字注意的。解決方法修改 forumdisplay.php 文件:將 $extra = rawurlencode(page=$page

9、$forumdisplayadd); 語句替換為$extra = rawurlencode(page=1$forumdisplayadd);語句中的page就是forumdisplay page,這樣改后不管帖子在列表頁的第幾頁,這個數(shù)都是1。功能損失:當(dāng)用戶編輯帖子或版主管理帖子后,有個提示跳轉(zhuǎn)頁:選擇轉(zhuǎn)入列表頁還是主題頁,這時轉(zhuǎn)入列表頁的話,只能轉(zhuǎn)到列表頁第一頁,而不管您原來停留在第幾頁。redirect的301重定向在discuz論壇中可以看到類似redirect.php?tid=xxx&goto=lastpost#lastpost這樣的鏈接,它的功能是實(shí)現(xiàn)“最新發(fā)表、最后發(fā)表、上一主題

10、、下一主題“功能,僅這一個功能就可以給同一個內(nèi)容頁造成四份復(fù)制網(wǎng)頁,因此將這樣的鏈接301永久重定向到帖子的靜態(tài)地址。解決方法修改 redirect.php 文件:將前兩個 require_once DISCUZ_ROOT./viewthread.php; 語句替換為$bmt_url=Location:/thread-.$tid.-.$page.-1.html;header(HTTP/1.1 301 Moved Permanently);header( $bmt_url );將后兩個 require_once DISCUZ_ROOT./viewthread.php; 語句替換為$bmt_url

11、=Location:/thread-.$tid.-1-1.html;header(HTTP/1.1 301 Moved Permanently);header( $bmt_url );dz5.5的引用處也有個跳轉(zhuǎn),也可以做301:將 dheader(Location: viewthread.php?tid=$posttid&page=$page#pid$pid);替換為$bmt_url=Location:/thread-.$posttid.-.$page.-1.html#pid.$pid;header(HTTP/1.1 301 Moved Permanently);header( $bmt_u

12、rl );*注意此處直接轉(zhuǎn)到了靜態(tài)地址,沒有做判斷是否開啟偽靜態(tài)功能,所以不開啟會有問題功能損失:轉(zhuǎn)向到靜態(tài)地址后,動態(tài)地址中類似#lastpost的錨點(diǎn)將無法起作用了,可能要手動滾屏了?好像沒有影響錨點(diǎn)提示信息頁的網(wǎng)頁復(fù)制這個問題和內(nèi)容頁也有著很大的關(guān)系,呵呵。如管理員設(shè)置允許游客瀏覽列表,而禁止瀏覽內(nèi)容時,這些內(nèi)容頁都將返回一沒有權(quán)限的提示信息頁,但它們的URL是不同的,這樣就形成了嚴(yán)重的網(wǎng)頁復(fù)制,此外還有其它形成的無權(quán)操作等。別一種提示信息如帖子不存在等,數(shù)量大了也會形成網(wǎng)頁復(fù)制。這兩種提示信息,都是通過showmessage函數(shù)分別調(diào)用nopermission.htm和showmess

13、age.htm兩個模板實(shí)現(xiàn)的。解決方法1.創(chuàng)建另一個頭模板文件 templates/default/header_disbots.htm內(nèi)容同 header.htm 文件,但加入meta robot標(biāo)簽,如下2.分別修改 templates/default/nopermission.htm 和 templates/default/showmessage.htm 文件將它們第一行的 template header 替換為 template header_disbots雖然對meta robots標(biāo)簽支持的不是很廣泛,但這是比較省事的方法因?yàn)槭翘崾拘畔㈨摚?01來實(shí)現(xiàn)的話,還要傳給轉(zhuǎn)到的頁好多信

14、息,修改起來比較麻煩discuz基礎(chǔ)優(yōu)化實(shí)踐(三) robots.txt使用及其它robots.txt使用User-agent: *#禁止一個版面的收錄#如果有個水版,不想禁止游客權(quán)限,也不想SE收錄,已免影響網(wǎng)站質(zhì)量,可以用如下方法Disallow: /forum-1-#數(shù)字即為要禁止版塊的ID。#注意數(shù)字最后的 - 不要省略,否則連ID為11,12等1開頭的版都禁了更新補(bǔ)充方法:再給內(nèi)容頁加meta robot禁止#再禁網(wǎng)頁復(fù)制Disallow: /viewthread.php#這個是內(nèi)容頁的動態(tài)形式,前面對偽靜態(tài)做了優(yōu)化并修改了很多的復(fù)制網(wǎng)頁,因此這里動態(tài)形式如打印頁等一定要禁止Disa

15、llow: /forumdisplay.php#這個要慎重:列表頁的動態(tài)形式,還包括精華、活動、投票等形式。我發(fā)現(xiàn)5.0的靜態(tài)化不徹底,它的上一頁下一頁翻頁仍是動態(tài),這樣如果禁止了,十頁之后的內(nèi)容就不能通這索引了。所以如果您站內(nèi)的交差鏈接不豐富的話,不要在此禁止,以免影響收錄。hekaiyu說沒有這個問題,去官方看了下5.5的確沒問題(也許我的5.0本來沒問題,也許官方在新版本中完善了正則表達(dá)式的替換規(guī)則),這樣更好了,禁止它,又干凈了好多#禁止其它無用內(nèi)容Disallow: /profile#用戶信息,不知為什么discuz也靜態(tài)化了,一律禁止Disallow: /relatethreadD

16、isallow: /postDisallow: /blogDisallow: /memberDisallow: /miscDisallow: /faqDisallow: /myDisallow: /pmDisallow: /digestDisallow: /status# . . 等等# robots.txt end 更新dz5.5的robots.txt后部分給出的Disallow: post.php等是不合規(guī)范的,一定要在前面加上/。 HYPERLINK /forums/thread-4464-1-1.html t _blank 詳細(xì)說明首頁URL問題后臺基本設(shè)置-首頁文件名如果不設(shè)置,會默

17、認(rèn)為index.php。所以站內(nèi)到首頁的鏈接為形式為http:/domain/index.php。而我們一般引用論壇首頁或交換鏈接的形式一般是http:/domain/。實(shí)際是一樣的,但SE可認(rèn)為是兩個URL,而且一個擁有很多的內(nèi)部鏈接,一個擁有較多的外部鏈接,所以哪個被降級都不是好事情,最好統(tǒng)一起來。這里的修改目標(biāo)是http:/domain/的形式。1.進(jìn)入后臺,基本設(shè)置-首面文件名 設(shè)置為: /2.修改文件 member.php 將 header(Location: $boardurl.$indexname); 替換為if( $indexname=/) header(Location: $boardurl);else header(Locat

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論