DEDECMS有个文档关键词维护功能,这个功能可以把文章里的关键词链向各个地方,就是内链优化,作为SEO人员用dedecms系统必须解决的问题,dedecms 文档关键词维护,这个之前也用过,只不过有点小BUG,这是在萧涵的博客里看到的,但是他的代码有错误;在网上搜了搜,终于解决了,dedecms文档关键词维护官方默认规则是:
1.文档关键词维护添加关键词和url对应表
2.文章内容出现改关键词
3.文章的关键词出现这个词(就是这里<meta name=”keywords” content=”" />)
显然第3条规则有问题,如果能去掉第3条规则就完美了。
我用的是dedecms5.5版本,修改文件 /include/arc.archives.class.php ,找到这一段:
foreach($kws as $k)
{
$k = trim($k);
if($k!=”")
{
if($i > $maxkey)
{
break;
}
$myrow = $this->dsql->GetOne(“select * from dede_keywords where keyword=’$k’ And rpurl<>” “);
if(is_array($myrow))
{
$karr[] = $k;
$GLOBALS['replaced'][$k] = 0;
$kaarr[] = “<a href=’{$myrow['rpurl']}’><u>$k</u></a>”;
}
$i++;
}
}
把它替换成:
global $dsql;
$query=”SELECT * FROM dede_keywords WHERE rpurl<>” ORDER BY rank DESC”;
$dsql->SetQuery($query);
$dsql->Execute();
while($row = $dsql->GetArray())
{
$key = trim($row['keyword']);
$key_url=trim($row['rpurl']);
$karr[] = $key;
$kaarr[] = “<a href=’$key_url’ target=’_blank’><u>$key</u></a>”;
}
友情提示一下:不管修改什么文件,记得先备份一个,以免出错!
最后在后台-文档关键词维护 这项中把各关键词的链接做好,更新文章就OK了。
注:代码粘上来半角的符号变成全角了(后台系统文章管理修改都会变成空白),
以下是已修改好的文件,直接下载就可使用,5.5版本的。