首页 >> SEO优化, 网站技术 >> DedeCMS修改与优化

DedeCMS修改与优化

Catagory:SEO优化, 网站技术, Date:2011年07月27日,Author: 工业品营销-贾定强

最近由于工作调动,开始从事一些针对百度的中文优化工作。国内用的比较多的内容管理系统是DedeCMS。今天跟大家分享一下如何修改一个DedeCMS来让它更适合SEO,同时更符合用户体验。

下面我以Dede默认的模板为例,来说明一下。

1. DedeCMS标题title修改

Dede最大的问题在于它的页面标题和文章标题默认是一样的。这样,就使得页面在用户体验和SEO不能两全。因为很多我们刻意优化的页面title,并不希望用户在阅读文章的时候看到。所以,修改文章模板的title是第一步。我采用的办法是在后台添加或修改文章的时候,标题作为文章的标题,短标题作为页面的标题。下面是修改办法。打开文章模板article_article.htm,修改title标签为<title>{dede:field name=’array’ runphp=’yes’} @me=(@me[‘shorttitle’]?@me[‘shorttitle’]:@me[‘title’]);{/dede:field}_{dede:global.cfg_webname/}</title>,意思就是如果有shorttitle字段,title标签就显示shorttitle,没有的话就显示title字段。但是shorttitle默认是有长度限制的,所以需要修改长度限制。首先修改数据库中archives表中shorttitle字段的长度,然后修改管理后台文件夹下archives_add.php,archives_edit.php,archive_add.php,archive_edit.php中的$shorttitle = cn_substrR($shorttitle,36),将36改为你需要的title的最大长度。这样,DedeCMS的title问题就解决了。

2. DedeCMS面包屑导航修改

DedeCMS默认的面包屑导航跟搜索引擎能够识别的面包屑导航也是不一致的,需要修改。如前文所述,面包屑导航应该是一排内部链接,Google给出的例子是用“ > ”隔开各个链接的,最后一个是具体页面的名称,不加链接。而DedeCMS默认的导航是一排链接,最后一个也不是具体页面,而且还加着链接。这是需要修改的。首先来看文章页模板article_article.htm,默认的在面包屑导航位置的代码是<div> <strong>当前位置:</strong> {dede:field name=’position’/}</div>,我们需要在后面加入本页的标题,即修改为:<div> <strong>当前位置:</strong> {dede:field name=’position’/}<b>{dede:field.title/}</b></div>。再来看列表页模板list_article.htm。列表页修改比较复杂,默认的面包屑把当前列表页加上了链接,我们首先需要去掉当前页上的a标签,然后去掉最后面带的“>”号。代码修改如下:

<div> <strong>当前位置:</strong>
{dede:field name=’position’ runphp=’yes’}
$a=mb_strlen(@me);
$str=mb_substr(@me,0,$a-2);
$a=mb_strripos($str,” > “);
$str2=mb_substr($str,0,$a);
$name = strip_tags(mb_substr($str, $a+3));
$str2 = $str2.” > <b>”.$name.”</b>”;
@me = str_ireplace(“<b><b>”, “<b>”, $str2);
{/dede:field}
</div>

3. DedeCMS Tag页面实现伪静态。

DedeCMS默认的tag页面的url路径是“tags.php?/tagname”,这种tag页面地址对于SEO是不利的,我们需要将它改成“tags/tagname”的形式。修改方式如下:

  • dede后台开启伪静态
  • 找到文件 /include/taglib/tag.lib.php 搜索以下代码:
    $row[‘link’] = $cfg_cmsurl.”/tags.php?/”.urlencode($row[‘keyword’]).”/”;
    改成
    $row[‘link’] = $cfg_cmsurl.”/tags/”.urlencode($row[‘keyword’]).”.html”;
  • 找到模板文件 templets/default/taglist.htm 搜索以下代码:
    <strong>当前位置:</strong>:<a href=”{dede:global.cfg_cmsurl/}/”>主页</a> &gt; <a href=’tags.php’>TAG标签</a> &gt; {dede:field.title /}
    修改为
    <strong>当前位置:</strong>:<a href=”{dede:global.cfg_cmsurl/}/”>主页</a> &gt; <a href=’/tags.php’>TAG标签</a> &gt; {dede:field.title /}
  • 在根目录下添加.htaccess文件
    RewriteEngine on
    RewriteRule ^tags/?(\S+).html tags\.php\?$1

4. 给DedeCMS文章加入相关文章模块。

默认的DedeCMS的文章模板是没有相关文章模块的,而相关文章对于seo和用户体验都是很有用的,所以我们要添加相关文章模块。在article_article.htm中需要添加相关文章的位置加入如下代码便可以实现相关文章了。但需要注意的是,DedeCMS的相关文章是通过tag标签来实现相关的,所以添加文章的时候,要认真添加tag属性,这样才能得到优质的相关文章列表。

<div>
<dl>
<dt><strong>相关文章</strong></dt>
<dd>
<ul>
{dede:likearticle row=’10’ col=’2′ titlelen=’50’}
<li><a href='[field:arcurl/]’>[field:title/]</a></li>
{/dede:likearticle}
</ul>
</dd>
</dl>
</div>

上面添加的相关文章有一定的局限性,就是一篇文章只能与在同一目录下的文章进行相关,不能与其他目录下的文章相关,所以,我们需要修改相关文章的函数。在\include\taglib\likearticle.lib.php找到代码arc.typeid IN($typeid),它的意思就是相关文章的typeid要与当前的一致,将这段代码去掉,就可以实现dedecms调用全站相关文章了。

5. DedeCMS去掉默认的“织梦链”。

模板中默认的“织梦链”是个非常讨厌的东西,而且在后台的链接管理模块是去不掉的,必须通过修改模板来实现。具体方法如下:\include\taglib\flinktype.lib.php的第61行,if($type == ‘dedecms’) $row[] = $dedecms; 把’dedecms’随便改一下就可以去掉默认的“织梦链”了。

6. DedeCMS导航下拉菜单的修改。

默认的DEDE的主菜单是不带下拉功能的,但是可以通过添加代码的方式来实现下拉菜单功能。即当鼠标滑过主菜单时,其子菜单就下拉出来。具体的修改方式是在footer.htm文件中添加如下代码:

<script type=’text/javascript’ src='{dede:global.cfg_cmsurl/}/images/js/dropdown.js’></script>
{dede:channelartlist typeid=’top’ cacheid=’channelsonlist’}<ul id=”dropmenu{dede:field.typeid/}”>
{dede:channel type=’son’ noself=’yes’}  <li><a href=”[field:typelink/]”>[field:typename/]</a></li>
{/dede:channel}
</ul>
{/dede:channelartlist}
<script type=”text/javascript”>cssdropdown.startchrome(“navMenu”)</script>

当然,模板的修改远不止这些,我只是挑选了一些与SEO相关的进行了一些阐述。如果你对DedeCMs有更深的研究的话,欢迎给我留言。

 

来源:工业品营销,原文地址:http://www.jiadingqiang.com/2216.html,欢迎分享本文,转载请保留出处!

Comments: 24 Responses to “ DedeCMS修改与优化 ”
三月 14th, 2013

很不多已经都在用了

[回复]

十月 21st, 2011

很好的文章,虽然自己有改动,但是没有强哥的这么全面,开始实施

[回复]

八月 14th, 2011
股票资讯 说 Said:

站长不容易啊

[回复]

八月 12th, 2011
苏州SEO 说 Said:

这个DEDE是很常用的 所以一定要学会 呵呵

[回复]

八月 12th, 2011
左旋肉碱 说 Said:

貌似很不错 学习了

[回复]

八月 11th, 2011

来看看博主、猎点东西,嘿嘿!!

[回复]

八月 10th, 2011
英文SEO 说 Said:

呵呵,刚好我也在研究dedecm呢,一起交流啊

[回复]

八月 9th, 2011
武汉seo 说 Said:

很少用dede 一般都是用默认的

[回复]

八月 9th, 2011

学习了啊,很使用啊

[回复]

八月 9th, 2011
西安 说 Said:

来看看 了解一下

[回复]

八月 7th, 2011
ErrorGo 说 Said:

感谢分享cms模板的修改方法。

[回复]

八月 6th, 2011
SEO 说 Said:

很好,正在研究织梦,这篇文章对我有帮助

[回复]

八月 2nd, 2011

有点小复杂 不过还是感谢博主的用心,学习了 谢谢~~

[回复]

八月 2nd, 2011
seo优化 说 Said:

看上去挺复杂的,不过很有用。

[回复]

八月 2nd, 2011
肝病预防 说 Said:

lz 文章写得很不错 学习到了 谢谢 ~

[回复]

八月 1st, 2011

过来学习了。不错啊。

[回复]

七月 31st, 2011
mfj 说 Said:

很专业业,学习学习

[回复]

七月 30th, 2011
土工布 说 Said:

一直在用织梦,很不错啊

[回复]

七月 30th, 2011
SEO 说 Said:

徐涛飘飘悠悠的就来到这里了,拜读完博主的文章后才知道,这趟没白来!~

[回复]

七月 30th, 2011

我不能看懂呢,有什么基础的书先看下嘛?

[回复]

七月 29th, 2011
优卡电影网 说 Said:

php很不错,就是觉得有点难学!

[回复]

七月 29th, 2011
kuaibo 说 Said:

过来学习下了。

[回复]

七月 29th, 2011
北京 说 Said:

好复杂 呵呵 学习学习

[回复]

七月 28th, 2011

来看看,学习一下

[回复]

你也来说几句:

名字*必填
邮箱*必填,不会被公开
网站
QQ群交流
最近文章
文章归档
  • 2017 (3)
  • 2016 (30)
  • 2015 (63)
  • 2014 (21)
  • 2013 (38)
  • 2012 (25)
  • 2011 (67)
  • 2010 (268)
  • 2009 (19)