文档关键词维护,文章页自动添加关键词内链锚文本-织梦(Dedecms)

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

  DEDECMS有个文档关键词维护功能,这个功能可以把文章里的关键词链向各个地方,就是内链优化,作为SEO人员用dedecms系统必须解决的问题,dedecms 文档关键词维护,这个之前也用过,只不过有点小BUG,在网上搜了搜,终于解决了,dedecms文档关键词维护官方默认规则是:

  1.文档关键词维护添加关键词和url对应表

  2.文章内容出现改关键词

  3.文章的关键词出现这个词(就是这里)

  显然第3条规则有问题,如果能去掉第3条规则就完美了。

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

  1.添加关键词和关键词的链接地址

  设置步骤:进入后台 核心->批量维护->文档关键词维护

  2.文章内容出现该关键词

  3.文章的关键词出现这个词(就是这里) //这个是在发布文章的时候填写的

  第三条规则使得关键词内链不尽完美,所以得修改文件取消掉第三条规则,达到我们想要的效果,即文章内出现该关键词即链向指定的URL

  在Dedecms5.5,5.6下测试有效

  一、开打include/arc.archives.class.php 文件

  二、查找 function ReplaceKeyword($kw,&$body)

  三、往下找到下面这段代码,删除或注释掉

  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[] = "$k";

  }

  $i++;

  }

  }

  四、并在注释或删除的代码下面加入以下代码:

  $dsql = new DedeSql(false);

  $query="select * from dede_keywords where rpurl<>'' ";

  $dsql->SetQuery($query);

  $dsql->Execute();

  while($row = $dsql->GetArray())

  {

  $key = trim($row['keyword']);

  $rul=trim($row['rpurl']);

  if($rul!="")

  if(!in_array($key, $kw))

  if(!in_array($kw,$key))

  if(substr_count($body,$key)<20)

  {

  $karr[] = $key;

  $kaarr[] = "$key";

  }

  }

  五、OK,已经修改完成了。直接复制上面代码,文章内同样的关键词只会出现一个链接。

  六、一键更新网站->更新所有

  dede5.7的解决方案:

  1.修改系统参数—>核心设置—>关键字替换(是/否)使用本功能会影响HTML生成速度(这里选 是)

  2.修改 include/arc.archives.class.php

  找到

  $body = preg_replace("/()(.*)(<)(\/a>)/isU", '\\1-]-\\4-[-\\6', $body);

  在下方加入以下代码

  //设置所有关键词

  $dsql12 = new DedeSql();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值