过期域名预定抢注

 找回密碼
 免费注册

DedeCms 5.3 超強的SEO優化全攻略

[複製鏈接]
發表於 2009-7-8 16:33:07 | 顯示全部樓層 |閱讀模式
DedeCms 是公認的在SEO優化方面做得做好的CMS,可能很多人會說,優化是靠個人的,與CMS無關,這其實也不盡正確,因為必須程序提供商提供足夠的工具才有可能,舉例說:如果某CMS的欄目設置連關鍵字、摘要都沒有,何來優化之說?本文以DedeCMS為例,深入說明SEO優化方面的攻略,本文所說的優化絕對不是那種含emu的SEO策略,而是針對網站自身的內容,提高搜索引擎對內容的識別能力。3 `- I8 z6 N6 K& L8 K+ e4 @

8 [: B" t1 E% ^2 Z* Z: s" l一.DEDE全局優化
! j0 p- K2 Y& g3 r5 W$ k/ q9 z1 i9 e+ L4 e
在DedeCms的系統參數配置中,包含了「網站版權、編譯JS等底部調用信息;站點默認關鍵字;站點描述」這些項目,其實必須注意的是站點默認關鍵字、站點描述的設置必須合理。
: |9 K; s7 i  {0 w0 ?/ L7 k& a3 l
( L9 f- o  R) I$ L3 X8 Y7 T(1) 站點名稱和關鍵字是搜索引擎識別你這個網站內容的關鍵,其中在主頁的網站名稱可以手工填寫,在標題的地方適當增加一些關鍵字。
/ |' i1 Y# C0 S# ~( S  w, g
+ l  q9 z) L+ L(2) 網站摘要(站點描述)必須要合理,最理想的寫法應該是「某某網站是關於某某方面的內容的網站」這裡千萬別堆砌關鍵字,否則可能會被搜索引擎視為emu或放棄使用你指定的這些描述作為站點描述。
5 K+ r% C8 O/ g
! G+ j! m: S- c: V' a. n& R( |(3) 對於新站而言,為了提高網站名的權重,還可以在底部放一些「某某網站的內容來自何處或版權所有之類」這裡也不能堆砌關鍵字或僅突出某一兩個關鍵字,僅是為了提高網站名的權重。
2 [; B* P5 p, u$ F4 I9 ?
8 d& ?5 ~$ C  y- G二。欄目標題與關鍵字、摘要的合理SEO# s& F1 w1 r, I
$ O3 Q2 B' ?  u" `# _0 L' ~
對於有耐心的用戶,在新建欄目時最好把欄目的關鍵字填寫完整,如果沒有耐心的,不妨用下面的方法。
7 M" e2 y& ?8 A4 x% M/ Z  ?; k6 B7 H
在建好所有欄目後,到系統-》SQL命令行工具的地方運行下面的SQL:1 ~* V) S: p8 x  U$ n
3 s) e- C& K% S% z
Update `dede_arctype` set 9 V% k6 Y/ ~( t4 H3 h) c4 }! y
keywords=Conact(typename, 『,』, typename, 『,』, 『和內容相關的關鍵字,如:教程、新聞、資源等』),
" \8 j* `! v" V0 r* Hdescription=Conact(』本欄目主要是關於』, typename, 『,』, typename, 『,』, 『和內容相關的關鍵字,如:教程、新聞、資源等』, 『方面的內容』);4 H4 r8 i0 l! M% H, ^

  r' ?7 J4 h. h! \+ p8 P( F三.核心文章內容的SEO8 K  l% S* [4 N  B" ~
8 T% S/ i6 I7 G8 w
DedeCms 提供了自動關鍵字提取、自動摘要等各類工具來進行文檔的優化,不過有部份用戶往往習慣對本站所的文章都用同樣的關鍵字、同樣的摘要,這種方法是極不可取的,如果在沒法獲得關鍵字和摘要的情況下,寧可放棄這些描述,讓搜索引擎自動生成。
$ H8 f% r1 X+ U" ]0 {# G; q0 r+ g3 m- `
使用DedeCms時,需要進行如下更改:
* i7 _/ a6 M/ _$ p0 h3 q& t1 G; Q) H5 t0 [% R2 W1 R4 R' B* K' \
(1) 對於多頁的文章 DedeCms 的標題默認沒有1、2、3之類的標識,這裡可以打開 arc.archives.class.php
" M! Q' Z3 s0 K0 H# m/ `) _' p; n2 e, L7 k) H
在大約是 350 行左右的地方找到「//循環生成HTML文件」,然後把for循環起始的地方改為# R: Z( o8 n; M1 S$ \/ H

5 @6 i' Q6 \3 c; Y8 d' V, s! N4 }for($i=1;$i<=$this->TotalPage;$i++) # y# Q2 M0 L( }, g
{ & _% w* K2 u+ X, V* l4 ?! M
if($this->TotalPage > 1) { 2 }) R; a5 K; j1 R6 J
$this->Fields['tmptitle'] = (empty($this->Fields['tmptitle']) ? $this->Fields['title'] : $this->Fields  Z  ?3 @+ f4 z. b" n

$ v. z" ~' n; {3 r$ G4 c['tmptitle']);
% g" }( L9 w" f0 P& K" j$this->Fields['title'] = $this->Fields['tmptitle'].」($i)」; 0 ]# N. z% O9 N  L  \9 A
}
0 B* e$ ]* Y8 O1 b- o& q7 P" Z$ V" R
: d, q7 K  s! I/ q% n
* a7 G: f) N3 z3 w3 ~$ M& W這樣就能使多頁文章的標題帶有(1)、(2)、(3)… 的標識了。+ w3 j5 A* W, _

( n4 q4 W, d2 |! J, X* J(2) 如果標題進行了修改,那麼每頁所對應該的摘要必須也要進行修改,否則會被搜索引擎認為描述是相同; `/ s5 ^7 U) S3 j

4 O2 o/ D/ |1 Z. D' J6 O% V引發被懷疑堆疊關鍵字的警告。7 M" A) X  L: y- y  e: A
' _  q# [$ c2 l- M) L
打開 arc.archives.class.php 找到 function ParseDMFields($pageNo,$ismake=1)/ c8 ]9 W. y2 n3 @0 l) d+ f

2 [# M) k$ F1 P4 o( T: A6 O0 U1 V. t# u7 A, m7 }! f* @5 i2 X0 [
* d; c: `7 d2 y0 e; Q( Z: y+ k8 h. ^6 B# f
if($this->SplitPageField!=」 && isset($this->Fields[$this->SplitPageField]))
/ T1 _5 c* j$ w3 ^{ ; a" K5 J2 B6 @8 X8 _
$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1];
% J! W  b! W5 I- `. |}
! ~. }5 K  Z; L& ~* J% X% ~4 a) ]. S) _1 m
改為% o! r6 [+ F2 _9 u$ T

9 `# \- \% Z: A8 |/ y0 nif($this->SplitPageField!=」 && isset($this->Fields[$this->SplitPageField])) 0 a- A; M. ~( ^1 q
{ , e6 a+ j& ]7 @/ g
$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1]; 7 A" G2 o  a# `2 y3 m; l5 {
$this->Fields['description'] = trim(ereg_replace(」[\r\n\t]「, 『 『, cn_substr(html2text($this->Fields[$this0 t3 V* [2 ~3 D
% H5 P2 A' G3 F" S( p
->SplitPageField]), 200)));
5 W9 v' s" D) ]1 M$ A- N5 ~4 U}
( p" b& R; j5 ^4 d4 W8 F( n1 M2 B+ [, f! F
這樣文檔每頁的摘要便有所區別。% V$ w/ v3 W) M8 Q2 w" [+ k7 E
7 C+ x& E6 |5 \+ i
四.創造符合GOOGLE麵包屑導航的目錄式SEO
2 z; T4 L) t# Q0 x7 r- o! |, ?0 L4 s0 }' F& J# ^9 E2 k7 s
DedeCms V5.3中,為了兼容某些人配置的WEB服務器,對欄目鏈接強制指向了默認頁,即是顯示為 typedir/index.html ,對於某些用戶可能希望指定」typedir/」, 對於SEO而言,這確實有利於體現出網站的目錄結構,因此這樣想法是合理的,如果你的網站結構比較簡單(如不使用一些公司簡介之類的非默認頁鏈接),可以 按下面方式修改。( Z' F! P0 q" `# o
- N2 m' I3 w- e" G& g% x- O2 u, `. }
打開文件 channelunit.func.php 找到 function GetTypeUrl
4 Y4 L0 b2 F3 o3 y4 {6 ?2 ^- S7 T2 A3 X) O  q0 o5 {( j7 }& c
($typeid,$typedir,$isdefault,$defaultname,$ispart,$namerule2,$moresite=0,$siteurl=」,$sitepath=」)
: L/ |' L# Z' G* D0 m6 {9 J+ V, g  Z
把前面一段% a0 d6 ]# v! l1 K* Y& D# U
. o7 c* S4 s/ r' ^2 \0 S
if($isdefault==-1) 6 k" R; R: I# y  b, D
{
6 b9 p8 P5 ~' j' n//動態
! }2 Y% e2 m/ u! n$reurl = $GLOBALS['cfg_phpurl'].」/list.php?tid=」.$typeid; 2 H9 k, V' |# p4 k1 o% ]
}
! S0 J. I9 |: xelse if($ispart==2)
' Q7 f% R: _0 \3 W* m/ l{ % D0 J$ u5 J# S% t6 M
//跳轉網址
4 A% J3 u" v# S" L* G$reurl = $typedir; / P4 _8 P2 w5 B; t4 I: I0 R* b
return $reurl;
# b* ]3 f, w6 X5 m4 x}
% d: ^$ B7 h: v) L. nelse
# E  v& u, ?: w8 P  {5 v9 ^{ & D' ^! W/ v( l; e; u1 H0 H$ B2 u
if($isdefault==0 && $ispart==0) 1 }% m' L0 L5 p" i- F; b* A
{
& b! Q/ i# m0 M+ z: Z) S$reurl = str_replace(」{page}」,」1〞,$namerule2); # r0 L* k6 a! b: o3 |+ R6 w7 m
$reurl = str_replace(」{tid}」,$typeid,$reurl); 9 S$ g: p4 J# u
$reurl = str_replace(」{typedir}」,$typedir,$reurl); $ q" B( ^4 [, |' J+ t
} else { : v% |0 Z- j' J* j) l
$reurl = $typedir.』/』.$defaultname;
" V& y' Q) m# c}
4 }5 ~  S4 M' N0 B} % |2 o' G# ^% u4 m: [" D

& r7 N) h+ {$ b+ M1 y0 d改為:
0 e* \# b; h5 F3 q3 A* i/ [" H2 _
; x/ [6 x; {. T. s0 B7 Y' ]% Rif($isdefault==-1) 1 X2 G* p$ {! J3 R
{
4 h/ `( F& g" H' Q6 l1 e% c! d//動態
5 y! J8 B- S# O/ m* `& A$reurl = $GLOBALS['cfg_phpurl'].」/list.php?tid=」.$typeid;
/ V& J# o: N: b, }: ?} 9 O4 V- {/ O5 @1 Y! W  }
else if($ispart==2)
5 @; F- O4 V2 d& z* F* Y{
- K+ k. q6 {- F1 ~1 d! F2 u5 e//跳轉網址
/ R, v; q5 t; Y& H4 U8 O! q" @$reurl = $typedir;
0 [- H. W; C7 ^/ E1 T2 X0 Jreturn $reurl; : N9 j" p  [. h0 V8 f8 E
}
5 a* b! M8 \0 S! ?else 5 {- |/ i& G. ~
{
& f+ R8 Y$ P  h' Sif($isdefault==0 && $ispart==0) 2 h& W1 C- `9 G; C! w
{
5 J3 X. ?/ S  u$ W- o% D8 ]$reurl = str_replace(」{page}」,」1〞,$namerule2);
2 K4 \7 o$ W6 v2 d  j  x' G9 W$reurl = str_replace(」{tid}」,$typeid,$reurl);
: r5 k# d1 S) D$reurl = str_replace(」{typedir}」,$typedir,$reurl);
* T3 C8 o$ A1 k) Z5 H' `" ^7 A7 u} else {
  X& D9 n& F3 \. Z/ S- b' Fif(!isset($cfg_need_dfname) || $cfg_need_dfname==』N') $reurl = $typedir.』/'; : D% g% ]& F- g9 S: g
else $reurl = $typedir.』/』.$defaultname;
6 p* J* i0 J% k/ W; L} + h! k' r) I9 V: K! L- Q) f+ Z3 g
} ; |. o, U& u3 k( L) G& q! O1 t# Q

7 D9 M1 b  [; M) v0 F3 s% |5 k' M5 `% h# z- s# @5 p' B5 ~
關鍵在於:「if(!isset($cfg_need_dfname) || $cfg_need_dfname==』N') $reurl = $typedir.』/';」這一句不過大家一定需注意一個問題,目錄必須用 typedir/ 的形式,否則在IIS如果用 typedir不帶」/」的形式,IIS會通過303永久重定向到 typedir/ ,讓搜索引擎又多費了一重功夫,這顯然不搜索引擎喜歡的,也不是我們想看到的。- K3 U+ {* J) q1 J
8 v1 O- p" K8 U3 o( _  n+ L
5、重複文檔標題
" h4 t. c3 [  [* \3 R: a+ ]/ b- e/ _5 ^, P2 f
不管任何情況,盡量減少你網站出現的重複文檔,DedeCms本身也提供了重複標題檢測處理的功能,在網站被搜索引擎大量收錄前,必須排除網站上重複的文檔,如果重複量過大,甚至會被認為你的網站是emu的。' v9 G7 g" P* N& u0 t

! b) G+ C6 R) z! q. W: r. _綜上總總,DedeCms 自身為SEO提供了各類的工具,不愧是SEO優化做得最好的CMS,在默認模板上也有體現,但由於兼容性原因,官方也沒開放所有符合SEO的方案,如果你做的網站進行上面所說的修改後,並不會影響到運行,這樣將會更完美。
發表於 2009-7-8 17:29:07 | 顯示全部樓層
DEDE是CHINESE最好的CMS,但做英文在GG中不一定好使
回復 给力 爆菊

使用道具 舉報

發表於 2009-7-9 02:23:00 | 顯示全部樓層
看看!!!!!!!!!
回復 给力 爆菊

使用道具 舉報

發表於 2009-7-16 16:38:56 | 顯示全部樓層
看看,學習下,待會發表意見
回復 给力 爆菊

使用道具 舉報

發表於 2009-7-17 16:58:21 | 顯示全部樓層
我正在用DEDE 我很喜歡這個  很容易的讓我獲得不錯的排名
回復 给力 爆菊

使用道具 舉報

發表於 2009-8-15 09:59:48 | 顯示全部樓層
看一看。能不能有效SEO
回復 给力 爆菊

使用道具 舉報

發表於 2009-8-17 17:18:55 | 顯示全部樓層
呵呵,先回復了看看。。。。
回復 给力 爆菊

使用道具 舉報

發表於 2009-8-17 19:26:16 | 顯示全部樓層
好幾個站都是5.3,收錄卻真的不盡人意。學習下
回復 给力 爆菊

使用道具 舉報

發表於 2009-8-21 11:35:33 | 顯示全部樓層
thanks for your sharing
回復 给力 爆菊

使用道具 舉報

發表於 2009-9-23 16:42:02 | 顯示全部樓層
織夢確實不錯.........
回復 给力 爆菊

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 免费注册

本版積分規則

过期高净值品牌域名预定抢注

點基

GMT+8, 2025-11-25 21:55

By DZ X3.5

小黑屋

快速回復 返回頂部 返回列表