dedecms站内链接(描文本)的增强与优化

dedecms如何做好站内优化,如何实现网站内部链接优化,dedecms关键词自动锚文本方法,织梦DEDECMS文章自动锚文本内链的设置方法与技巧,下面小编来给大家介绍一下,一起来了解一下吧!

分享的是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  

推荐大家使用

以上就是dedecms站内链接(描文本)的增强与优化的介绍,希望大家喜欢!

更多教程关注FF推源码网。

提供最优质的资源集合

立即查看 了解详情