dedecms站内链接(描文本)的增强与优化教程
如遇下载链接蓝奏网盘打不开lanzous替换成lanzoux尝试! 广告
织梦模板网分享的是dedecms一个非常实用的技巧,用过dede的人都知道,dede文章内链生成需要在后台添加文章的时候在关键词处填上想被链接的词,同时还要在关键词维护中有该关键词。
由于一篇文章关键词数量有限,且文章包含的词众多,除了该篇文章主要的关键词之外,对于其他页面有所关系的词优秀也能链上,这点,织梦模板做得比较好。
那修改一个地方,可以实现当文章中出现关键词维护中的词的时候,生成的时候就会自动链接。
修改方式如下:
找到include/arc.archives.class 文件下的:ReplaceKeyword 函数。
将这部分改成以下代码:
function ReplaceKeyword($kw,&$body)
{
global $cfg_cmspath;
$maxkey = 5; //替换次数
$kws = explode(”,”,trim($kw)); //以分好为间隔符
$i=0;
$karr = $kaarr = $GLOBALS[‘replaced’] = array();
//暂时屏蔽超链接
$body = preg_replace(”/()(.*)(<)(\/a>)/isU”, ‘\\1-]-\\4-[-\\6′, $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))*/
$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)<5)
{
$karr[] = $key;
$kaarr[] = “<a href=’$rul’><u>$key</u></a>”;
}
}
{
$karr[] = $k;
$GLOBALS[‘replaced’][$k] = 0;
$kaarr[] = “<a target=\”_blank\” href=\”{$myrow[‘rpurl’]}\”>$k</a>”;
}
$i++;
}
}
$body = preg_replace(”/(^|>)([^<]+)(?=<|$)/sUe”, “_highlight(’\\2′, \$karr, \$kaarr, ‘\\1′)”, $body);
//恢复超链接
$body = preg_replace(”/()/isU”, ‘\\1>\\3<\\4′, $body);
return $body;
}
}//End Archives
NOTICE:【咨询风格酷】客服微信:wwwxmamnet
NOTICE:【风格酷模板网②群】QQ群:288678775
☉免责声明:本站所有模板均来自用户分享和网络收集,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
☉如果源码网盘地址失效!或有其他问题,请点我报错,谢谢合作!
☉人民币与积分汇率为1比10,即1元=10积分.有任何疑问请联系客服!
☉如有其他问题,请加网站客服QQ(1131734965)进行交流。
☉本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
☉源码、模板等资源会随着技术、环境的升级而存在部分问题,还请慎重选择。