欢迎来到17模板网,本站为你提供优质的网站模板、CMS模板。

dedecms文档关键词维护,文章页自动添加关键词内链锚文本

17mb 发表于 2019-05-30  /  查看:  /  回复:  /  分类:织梦cms教程

网站关键词内链,是做好网站内部优化的一个重要环节
 
织梦(Dedecms)官方默认规则是:
 
1.添加关键词和关键词的链接地址
 
设置步骤:进入后台 核心->批量维护->文档关键词维护
 
2.文章内容出现该关键词
 
3.文章的关键词出现这个词(就是这里) //这个是在发布文章的时候填写的
 
第三条规则使得关键词内链不尽完美,所以得修改文件取消掉第三条规则,达到我们想要的效果,即文章内出现该关键词即链向指定的URL
 
在Dedecms5.5,5.6下测试有效
 
一、开打include/arc.archives.class.php 文件 
二、查找 function ReplaceKeyword(kw,&kw,&body) 
三、往下找到下面这段代码,删除或注释掉
 

foreach($kws as $k)
{
$k = trim($k);
if($k!="")
{
if($i > $maxkey)
{
break;
}
$myrow = $this->dsql->GetOne(""select * from keywords where keyword='$k' And rpurl<>'' "");
if(is_array($myrow))
{
$karr[] = $k;
$GLOBALS['replaced'][$k] = 0;
$kaarr[] = "<span style=""text-decoration: underline;"">$k</span>";
}
$i++;
}
}

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

$dsql = new DedeSql(false);
$query="select * from 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,已经修改完成了。直接复制上面代码,文章内同样的关键词只会出现一个链接。 
六、一键更新网站->更新所有

本文地址:https://www.17mb.com/study/dedecms/106.html

附件下载

    文章评论

    在下面输入回复(网友观点不代表本站观点,请文明发言,遵守法律法规!)