织梦CMS教程:文档关键词维护,文章页自动添加关键词内链锚文本

天外飘仙 2010-12-06 网络 天外飘仙

 

注意:本教程适用于 DedeCMS V5.5,V5.6


     

网站关键词内链,是做好网站内部优化的一个重要环节


     

织梦(dedecms)官方默认规则是:


  • 添加关键词和关键词的链接地址(设置步骤:进入后台 核心->批量维护->文档关键词维护)
  • 文章内容出现该关键词
  • 文章的关键词出现这个词(就是这里<meta name=”keywords” content=”" />) //这个是在发布文章的时候填写的 
第三条规则使得关键词内链不尽完美,所以得修改文件取消掉第三条规则,达到我们想要的效果,即文章内出现该关键词即链向指定的URL

   实现方法:打开/include/arc.archives.class.php



     

找到如下代码删除并注释:


以下为引用的内容:

  1. foreach($kws as $k)
  2. {
  3. $k = trim($k);
  4. if($k!="")
  5. {
  6. if($i > $maxkey)
  7. {
  8. break;
  9. }
  10. $myrow = $this->dsql->GetOne("select * from dede_keywords where keyword='$k' And rpurl<>'' ");
  11. if(is_array($myrow))
  12. {
  13. $karr[] = $k;
  14. $GLOBALS['replaced'][$k] = 0;
  15. $kaarr[] = "<a href='{$myrow['rpurl']}'><u>$k</u></a>";
  16. }
  17. $i++;
  18. }
  19. }

   在上一段代码的下一行增加如下代码:


以下为引用的内容:

  1. $dsql = new DedeSql(false);
  2. $query="select * from #@_keywords where rpurl<>'' ";
  3. $dsql->SetQuery($query);
  4. $dsql->Execute();
  5. while($row = $dsql->GetArray())
  6. {
  7. $key = trim($row['keyword']);
  8. $rul=trim($row['rpurl']);
  9. if($rul!="")
  10. if(!in_array($key, $kw))
  11. if(!in_array($kw,$key))
  12. if(substr_count($body,$key)<2)
  13. {
  14. $karr[] = $key;
  15. $kaarr[] = "<a href='$rul'><u>$key</u></a>";
  16. }
  17. }

  注意:数字2为替换的数量,请不要设置得太多,一两个就可以了。



     

好了,功能已经实现,接下来要做的就是重新生成网站的Html文件看看具体的效果吧。

责任编辑:天外飘仙