找回密码
 加入怎通
查看: 929|回复: 4

[站长八卦] 和大家分享下织梦的dedecms的代码优化

[复制链接]
TONY 发表于 2012-04-22 09:26:31 | 显示全部楼层 |阅读模式
dedecms系统是站长中使用最多的一款cms系统,对于dedecms系统,各个环节的构架都很符合seo,因此,许多站长都用它来建站,但dedecms系统并不是说就没有了缺陷,今天在这里,我想借admin5这个平台来谈谈dedecms系统如何更利于seo。 9 e( i3 ?# i) P# A8 a
   一、我想说的是栏目页标题,栏目生成后分很多页,而dedecms系统默认的却是各个页面的标题都是一样的,因此,这样是不利于seo的。而修改的方法是:

$ k/ O& @; i; v9 e8 H; i  DEDE5.7需要修改的地方
4 j: G  |8 C9 Z9 b2 x9 A  1.删掉$this->ParseTempletsFirst();
8 j8 j4 X% X  _. N* w  2.在$this->ParseDMFields($this->PageNo,1);前添加
' d: `) G! x$ e( T* v# l1 j1 ~1 a5 I( t  $this->Fields['pagexx'] = $this->PageNo;- k7 l2 @% P$ V
  $this->ParseTempletsFirst();
$ J& l2 Q: e0 u2 L8 Q& R, l  DEDE5.6等需要修改地方
( ?' J. i& V- v  1.删掉$this->ParseTempletsFirst();& I& v, m- h$ W) F+ c  c
  2.在$this->ParseDMFields($this->PageNo,1);前添加" V: m7 ~) K  }( Z( |, v& l
  $this->Fields['pagexx'] = $this->PageNo;
. R6 I- b( d2 \: K0 v: O3 X& c  $this->ParseTempletsFirst();
$ Y% _! z0 O- J( u  注:此修改仅针对静态页,也就是网站生成HTML之类网页的网站。
1 ~# ^( s# v( m" \5 j: ~% x  3.修改列表页模版,如list_article.htm! z8 K$ Z1 T; g" D+ [2 t* K: q
  在原本的标签之间加上_第{dede:field.pagexx /}页,如下边示范
- p# {( |! \' a6 U+ s  A2 J) |  二、dedecms系统生成的网站地图文件都在data这个目录下,而许多站长都想通过robots.txt把data这个文件夹蜘蛛屏蔽,但是又想蜘蛛访问网站地图文件,这个时候只需要进行以下步骤:
! Y6 b! h4 x3 y0 i9 M, p  修改根目录下你的管理员文件夹(默认是dede)下的makehtml_map.php文件4 R( M" z$ m( \1 U7 M9 y
  将17行的 $cfg_cmspath."/data/sitemap.html";
) r( X- ~. v' t: F" K+ I  改为0 t0 O3 S: z6 P1 G3 s* T
  $cfg_cmspath."/sitemap.html";
9 j0 G( q2 `& ?  a7 M  将22行的, ~! V7 C, B" M! D
  $cfg_cmspath."/data/rssmap.html";" a* ~% Y& v  f+ D7 J4 z3 w; D
  改为6 w; z( J! _7 W. J
  $cfg_cmspath."/rssmap.html";
# X& N* I3 t* u" e3 t$ W  17行是普通网站地图,22行是RSS的网站地图
$ n, d1 E. Q7 L6 Z6 ], p4 D$ E9 V  这样网站地图文件就生成到根目录了。
4 i# w8 y$ f5 r3 l  三、如今,搜索引擎对TAG十分重视,我自己做的网站tag页面被收录的也有不少,也能带来些流量,解决织梦CMS(DedeCms)TAG列表按最新发布时间排序,可以有效把最新的TAG提供给用户和搜索引擎。
  h5 J6 }! E3 u, R  P  解决方法:4 G' t- j* W. I2 P2 x+ U4 |. v) Y
  织梦CMS的目录下,/include目录下找到arc.taglist.class.php文件,查找代码:9 K# i1 M- P# D, x) V( o, T
  $this->dsql->SetQuery("Select aid From `dede_taglist` where tid = '{$this->TagInfos['id']}' And arcrank>-1 limit $limitstart,$getrow");
, Z3 w$ u! q8 K3 W$ S0 a& B+ P7 h  修改为:
8 t, `# K+ S; C  $this->dsql->SetQuery("Select aid From `dede_taglist` where tid = '{$this->TagInfos['id']}' And arcrank>-1 order by aid desc limit $limitstart,$getrow ");
) k& k% q( ]1 A+ p  e" b( b6 b

暂时无法加载帖子列表

回复

使用道具 举报

放小孩的羊 发表于 2026-01-18 00:31:15 | 显示全部楼层
蹲了这么久,终于看到有价值的讨论,支持一下!
回复

使用道具 举报

神战 发表于 2026-10-13 02:09:45 | 显示全部楼层
学习到了,之前一直没注意过这个点,受教了
回复

使用道具 举报

12f爱到疯1 发表于 2026-10-21 21:57:38 | 显示全部楼层
内容很干货,没有多余的废话,值得反复看
回复

使用道具 举报

枫叶吹 发表于 2026-10-23 21:52:48 | 显示全部楼层
楼主辛苦了,整理这么多内容,必须点赞收藏
回复

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-10-29 04:01 , Processed in 0.039950 second(s), 30 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表