|
怎么给文章内容添加关键字链接,这个问题一直困扰着我,上网查了很多办法都以失败而告终,万事靠
自己,经过自己的摸索和高人的指点,终于搞定了,下面把方法分享给大家,PS:我用的是dedecms系
统,不知怎麽的,dede在这方面设计的不尽人意,得自己解决了。
先看演示:http://www.fashion169.com 随便点一篇文章看看,都有关键词链接了
方法分享(注意是dedecms5.3.1 GBK版,经测试完全正确,其他版本自己试试):
首先需要修改一下系统文件(大家最好先备份一下文件,再修改,不怕一万就怕万一嘛)
找到:arc.archives.class.php文件 一般在/include/arc.archives.class.php下
文件用记事本打开找到这一段:
foreach($kws as $k)
{
$k = trim($k);
if($k!="")
{
if($i > $maxkey)
{
break;
}
$myrow = $this->dsql->GetOne("select * from cz_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++;
}
}
把他替换成:
$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)<5)
{
$karr[] = $key;
$kaarr[] = "<a href='$rul'><u>$key</u></a>";
}
}
用上传工具将原文件覆盖即可
发表文章前:
1、进入dedecms后台>系统>系统基本参数>核心设置>关键字替换(是/否),这里选择“是”。
2、然后 后台>采集>文档关键词维护, 在这里面设置关键词以及指向网址的链接。
这样发表文章时可以自动加上你设置的关键词链接了,特别注意的是在发表文章时[tag标签]内容处
不必要填空着就行,所有关键词及其链接都在上面第二部完成,多次测试,只要关键词和链接设置好了
,所有文章重新生成一下,都会出现设置的链接!因为在dede论坛中看到很多人求助但又无人解决,所
有就拿出来分享,高手可以跳过。(本文首发 女性时尚在线www.fashion169.com,转载请保留出处) |
|