做网站的朋友相信对织梦DEDECMS都不会陌生,很多站长朋友的网站兴许就是DEDE的内核搭建的,只不过很多朋友都给网站换了套衣服。而搜索引擎优化SEO对于大部分网站的重要性也不言而喻,怎么更好的利用DEDECMS来做好SEO?这将是本文的重点。
织梦dedecms程序本身对于SEO优化就已经做得比较好做得比较细,灵活性也很强,相信这也她受到大家喜爱的原因之一。不过没有什么是十全十美的,DEDE虽然已经做了足够多的工作,但也总是有一些细节的东西,要我们去发现,去修改,去灵活使用,比如织梦DEDECMS栏目列表分页链接的优化。
先看看DEDE默认栏目列表分页链接:
<li><a href='list_4_1.html'>首页</a></li>
<li><a href='list_4_3.html'>上一页</a></li>
<li><a href='list_4_1.html'>1</a></li>
<li><a href='list_4_2.html'>2</a></li>
<li><a href='list_4_3.html'>3</a></li>
<li class="thisclass">4</li>
<li><a href='list_4_5.html'>5</a></li>
<li><a href='list_4_5.html'>下一页</a></li>
<li><a href='list_4_5.html'>末页</a></li>
这种链接方式其实并不十分合理,回到列表第一页的地址变成了list_4_1.html,这样已经无意中分散了栏目页的权重。如果这是http://www.abc.com/abc/这个栏目的列表分页链接,下面的链接方式才更合理:
<li><a href='/abc/'>首页</a></li>
<li><a href='list_4_3.html'>上一页</a></li>
<li><a href='/abc/'>1</a></li>
<li><a href='list_4_2.html'>2</a></li>
<li><a href='list_4_3.html'>3</a></li>
<li class="thisclass">4</li>
<li><a href='list_4_5.html'>5</a></li>
<li><a href='list_4_5.html'>下一页</a></li>
<li><a href='list_4_5.html'>末页</a></li>
我也因这个此问题在网上找了好些方法,但是很多都不能用,当然,也有可以用的,但是都会有个条件:使用这种方法的前提是生成的栏目列表页面要放在栏目的根文件夹下(也就是说只有一级栏目适用)。
而很多朋友的网站栏目列表页都不是放在根目录下的(特别是二级栏目),怎么办呢?在经过深入研究和高人的指点后,我成功修改了前辈们的方法,使得栏目列表页面不管在不在根文件夹下都一样适用。下面重点介绍方法(以5.7版本为例):
PHP copy($list_1,$indexname);
在该代码的下方加入下面的代码:
PHP unlink($list_1);
这样就可以在生成栏目html的时候自动将列表第一页删除。
if($this->PageNo != 1)
{
$prepage.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n";
$indexpage="<li><a href='".str_replace("{page}",1,$tnamerule)."'>首页</a></li>\r\n";
}
改成:
if($this->PageNo != 1)
{
if($prepagenum==1)
{
$prepage.="<li><a href=\"".$typedir."/\">上一页</a></li>\r\n";
}
else
{
$prepage.="<li><a href=\"".str_replace("{page}",$prepagenum,$tnamerule)."\">上一页</a></li>\r\n";
}
$indexpage="<li><a href=\"".$typedir."/\">首页</a></li>\r\n";
}
4、找到
$listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\r\n";
改成:
if($j==1)
{
$listdd.="<li><a href=\"".$typedir."/\">".$j."</a></li>\r\n";
}
else
{
$listdd.="<li><a href=\"".str_replace("{page}",$j,$tnamerule)."\">".$j."</a></li>\r\n";
}