找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3329|回复: 4

[分享] 织梦(Dedecms)文章页自动添加关键词内链锚文本

[复制链接]
发表于 2012-3-24 05:55:47 | 显示全部楼层 |阅读模式 来自 中国–浙江–绍兴
DEDECMS有个文档关键词维护功能,这个功能可以把文章里的关键词链向各个地方,就是内链优化,作为SEO人员用dedecms系统必须解决的问题,dedecms 文档关键词维护,这个之前也用过,只不过有点小BUG,在网上搜了搜,终于解决了,dedecms文档关键词维护官方默认规则是:
1.文档关键词维护添加关键词和url对应表
2.文章内容出现改关键词
3.文章的关键词出现这个词(就是这里<meta name=”keywords” content=”" />)
  显然第3条规则有问题,如果能去掉第3条规则就完美了。
织梦(dedecms)官方默认规则是:
1.添加关键词和关键词的链接地址
设置步骤:进入后台 核心->批量维护->文档关键词维护
2.文章内容出现该关键词
3.文章的关键词出现这个词(就是这里<meta name="keywords" content="" />) //这个是在发布文章的时候填写的
第三条规则使得关键词内链不尽完美,所以得修改文件取消掉第三条规则,达到我们想要的效果,即文章内出现该关键词即链向指定的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[] = "<a href="{$myrow["><span style="text-decoration: underline;">$k</span></a>";
}
$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[] = "<a href=’$rul’>$key</a>";
}
}
五、OK,已经修改完成了。直接复制上面代码,文章内同样的关键词只会出现一个链接。

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2012-4-3 06:37:21 | 显示全部楼层 来自 中国–广东–惠州
众里寻他千百度,蓦然回首在这里!

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复 支持 反对

使用道具 举报

发表于 2012-4-3 20:03:05 | 显示全部楼层 来自 中国–广东–惠州
看后感悟了点,收下了

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复 支持 反对

使用道具 举报

发表于 2012-4-5 11:20:32 | 显示全部楼层 来自 中国–广东–深圳–龙岗区
5.7貌似没有这么复杂啦,在后台就能够直接设置滴

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复 支持 反对

使用道具 举报

发表于 2012-4-7 17:53:06 | 显示全部楼层 来自 中国–广西–桂林
嗯,学到了东西了

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-12-23 03:24 , Processed in 0.046150 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表