DedeCms根据文档标题自动获取tag(标签)

网站建设 2022-07-27 08:13www.1681989.com免费网站
在论坛里也看到有类似的帖子,测试了好多次都没有成功,于是自己进行了一些修改,测试成功,现在拿来和大家分享一下!这里自动获取的tag其实就是利用自动获取关键词的原理获取的,所以这样获得的tag和关键词是一样的!! 1、只根据文章标题获取关键词的修改方法 因为文章内容繁多, dede 默认的获取关键词是根据标题和内容获取的,会获取很多无用的关键词,而只根据标题获取则会相对大大减少无用关键词的数量,修改方法如下 打开dede/ […]



在论坛里也看到有类似的帖子,测试了好多次都没有成功,于是自己进行了一些修改,测试成功,现在拿来和大家分享一下!这里自动获取的tag其实就是利用自动获取关键词的原理获取的,所以这样获得的tag和关键词是一样的!!
 
  1、只根据文章标题获取关键词的修改方法
 
  因为文章内容繁多,默认的获取关键词是根据标题和内容获取的,会获取很多无用的关键词,而只根据标题获取则会相对大大减少无用关键词的数量,修改方法如下
 
  打开dede/action/article_add_action.php文件,分别查找如下代码
 
  //自动获取文章中的关键字
 
  和
 
  //自动分页
 
  将其之间的代码替换为如下代码
 
  
01 //----------------------------------
02  
03   if($autokey==1){
04  
05   require_once(DEDEADMIN."/../clude/pub_splitword_[url].php[/url]");
06  
07   $keywords = "";
08  
09   $sp = new SplitWord();
10  
11   $titledexs = explode(" ",trim($sp->GetIndexText($sp->SplitRMM($title))));
12  
13   // $alldexs = explode(" ",trim($sp->GetIndexText($sp->SplitRMM(Html2Text($body)),200)));
14  
15   // if(is_array($alldexs) && is_array($titledexs)){
16  
17   foreach($titledexs as $k){
18  
19   if(strlen($keywords)>=50) break;
20  
21   else $keywords .= $k." ";
22  
23   }
24  
25   // foreach($alldexs as $k){
26  
27   // if(strlen($keywords)>=50) break;
28  
29   // else if(!_array($k,$titledexs)) $keywords .= $k." ";
30  
31   // }
32  
33   // }
34  
35   $sp->Clear();
36  
37   unset($sp);
38  
39   $keywords = preg_replace("/|/","",$keywords); //将前面的@换为#
40  
41   $keywords = addslashes($keywords);
42  
43   }
 
  这样发表文章时选中自动获取关键词就是只根据文章标题获取关键词了!!

Copyright © 2016-2025 www.1681989.com 推火网 版权所有 Power by