您现在的位置是:首页 > 教程 > dedecms教程dedecms教程

dede织梦cms关键字不在keyword中设置实现內链的方法

从彤2023-10-15 22:52:17dedecms教程已有人查阅

导读dedecms关键词內连维护默认是需要和发布文章时匹配通过keyword中设置的关键字作为条件替换来完成的,今天分享的是不通过keyword中设置的关键字作为条件替换

dedecms关键词內连维护默认是需要和发布文章时匹配通过keyword中设置的关键字作为条件替换来完成的,今天分享的是不通过keyword中设置的关键字作为条件替换,而是在数据库中所有的词中索引匹配的织梦仿站方法: 测试环境为:DEDECMS v5.7
第一步:
/include/arc.archives.class.php(DEDE v5.7)
if($arr['type']=='htmltext' && $GLOBALS['cfg_keyword_replace']=='Y' && !empty($this->Fields['keywords']))
改为:
if($arr['type']=='htmltext' && $GLOBALS['cfg_keyword_replace']=='Y')
第二步:
/include/arc.archives.class.php(DEDE v5.7)中的 ReplaceKeyword 方法改成:
function ReplaceKeyword($kw,&$body) { global $cfg_cmspath; $maxkey = 3; $kws = explode(",",trim($kw));
//以分好为间隔符
$i=0; $karr = $kaarr = $GLOBALS['replaced'] = array();
//暂时屏蔽超链接 $body = preg_replace("#(<a(.*))(>)(.*)(<)(\/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 cn_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++; } }*/ $query = "SELECT * FROM cn_keywords WHERE rpurl<>'' ORDER BY rank DESC"; $this->dsql->SetQuery($query); $this->dsql->Execute(); $j = 0; while($row = $this->dsql->GetArray()) { $action = 1; if($j >= $maxkey) break; $key = trim($row['keyword']);

本文标签:

很赞哦! ()

留言与评论 (共有 条评论)
验证码:

本栏推荐

相关标签