以雅酷网为实例从技术上说说dedecms的seo优化要注意哪些?

目前在做雅酷网 ,雅酷卡是雅酷时空公司的产品,我个人感觉用雅酷卡消费还是比较实惠的,而雅酷卡的特色便是雅酷健身卡,很多站长成天的趴电脑上,可以考虑办一张这样的卡,在周末的时候去健身中心活动活动,还是比较不错的选择。 雅酷网是在dedecms的基础上开发的,虽然dedecms的文章系统比较棒,但是我们还需要一个商户的模型,而且对于数据处理方面,需求量比较大,于是我们对dedecms的数据库做了一些优化,尤其是对主表dede_archives做了分表,然后继续开发了一套关键词词库系统,商户自动采集系统和文章自动采集系统,你目前在http://www.yacol.net上看到的很多商户、文章,基本上都是靠这些采集系统来完成的,这些程序目前还不便于公开,以后可能会公布出来。今天以雅酷网为实例,从技术上讲讲我们在用Dedecms建站中都会注意些什么。希望对大家有一些帮助。

一、网站结构要清晰

我最烦那种能让人迷路的网站,所以我做网站之前都要先搞清楚网站需要什么功能,有什么栏目规划,每一个栏目是单页还是列表,大概需要几个页面,这些最基本的问题。网站的结构主要有网站树状结构、扁平状结构这两种。

1、网站树状结构:在网站的根目录下存在很多个网站的子频道(二级目录)、每个频道下都有自己的页面或内容。树状结构清晰的显示出网站的内容框架,方便搜索引擎对网站内容的抓取,树状结构适合中大型网站。

例如树状结构的网站频道:
http://www.yacol.net/baike/
http://www.yacol.net/shanghu/
http://www.yacol.net/card/

频道下又有属于其的页面:
http://www.yacol.net/baike/ydjs/
http://www.yacol.net/baike/ylxx/http://www.yacol.net/baike/shfw/
http://www.yacol.net/baike/mrmt/

2、网站扁平结构:网站所有的页面都存在于根目录下,也可以说是域名下。扁平结构适用于中小型网站,例如博客、企业站等。树状结构适合于中大型网站使用!

例如扁平结构的网站:
www.yacol.net/a.html
www.yacol.net/b.html
www.yacol.net/c.html
www.yacol.net/d.html
www.yacol.net/e.html
www.yacol.net/f.html

对于雅酷网,我采用了比较常用的的树状结构,因为我个人一直比较偏向于树状结构,感觉这种结构比较清晰明了,用户容易理解。至于扁平结构我只用过一次,就是在陈海阳律师团队http://www.chenhaiyang.org里,因为那个站数据量太大,而dedecms在数据承载能力上还不够强悍,所以把那个站采用了伪静态。

列表页诸如 http://www.chenhaiyang.org/list31/文章页诸如 http://www.chenhaiyang.org/view18/

二、网站路径的优化
        
        Dedecms的文档HTML默认保存路径是放在跟目录的“a/”下面,我们在后台的“系统设置”→“系统基本参数”中可以将文档HTML默认保存路径改为了根目录下。直接一个“/”就可以了。默认的内容页面的路径应该是这样的:http://网站域名/a/webbase/dreamweaver/2010/0407/57.html,这样的URL层级太深了对SEO不利,我们需要修改下,我一般是修改成:http://网站域名/栏目名称/文章ID/,比如:http://www.yacol.net/baike/gongyuan/17279/。在添加或修改栏目的的面板中将文章命名规则修改为:{typedir}/{aid}/index.html就可以,去掉了{Y}/{M}{D}/(这个是显示:年/月日)。如果你的栏目层级本来就很深的话,比如我这里百科栏目下还细分了公园等子栏目,建议你可以把文章页面都放在一个目录下,则定类似为:baike/{aid}/index.html。这个规则都是可以自定义的,你觉得怎么对seo有利就怎么来吧。对于最先批量或者单个加栏目的时候,可能对于这里老是要一个个的去修改文章路径很不爽,其实有简单的方法可以处理:
打开/dede/templets/catalog_add.htm ,找到“文章命名规则”,把后面的

<input name="namerule" type="text" id="namerule" value="<?php echo $cfg_df_namerule;?>" class="pubinputs"  style="width:250px" />

改为

<input name="namerule" type="text" id="namerule" value="{typedir}/{aid}/index.html" class="pubinputs"  style="width:250px" />

或者打开/include/common.inc.php,找到“文档的默认命名规则”,把后面的

$art_shortname = $cfg_df_ext = ’.html’;
$cfg_df_namerule = ’{typedir}/{Y}/{M}{D}/{aid}’.$cfg_df_ext;

改为

$art_shortname = $cfg_df_ext = ’.html’;
$cfg_df_namerule = ’{typedir}/{aid}/index’.$cfg_df_ext;

如果是需要批量加栏目的话,则打开/dede/templets/catalog_add_quick.htm ,找到“文章命名规则”,把后面的

<input name="namerule" type="text" id="namerule" value="{typedir}/{Y}{M}{D}/{aid}.html" size="40" class="pubinputs" />

改为

<input name="namerule" type="text" id="namerule" value="{typedir}/{aid}/index.html" size="40" class="pubinputs" />

三、网页TITLE标签的修改

据说现在百度基本上都不看keyword了(当然我们不能不写),但是现在的关键在于网页上的title。所以一定要把title好好做做。主要是涉及到一个如何实现"三级栏目_二级栏目_一级栏目_网站名称"的问题。雅酷网的title基本上是这样做的:

首页:

<title>{dede:global.cfg_webname/}</title>,在“系统设置”→“系统基本参数”中将首页的标题信息都写在网站名称里面。

栏目页:

找到include/typelink.class.php第164行左右,找到

$this->valuePositionName = $tinfos['typename'].$this->SplitSymbol.$this->valuePositionName;

上一篇:sudo apt-get update:Could not get lock /var/lib/apt/lists/lock解决办法


下一篇:Java基础 - Map接口的实现类 : HashedMap / LinkedHashMap /TreeMap 的构造/修改/遍历/ 集合视图方法/双向迭代输出