DEDEcms中根据文章标题自动获取tag的方法
修改:\dede\action目录article_add_action.php文件
在【//写入Tag索引】与【InsertTags($dsql,$tag,$arcID,0,$typeid,$arcrank);】之间插入:
if($autokey==1){
require_once(DEDEADMIN."/../include/pub_splitword_[url]www.php[/url]");
$tag = "";
$sp = new SplitWord();
$titleindexs = explode(" ",trim($sp->GetIndexText($sp->SplitRMM($title))));
//$allindexs = explode(" ",trim($sp->GetIndexText($sp->SplitRMM(Html2Text($body)),200)));
if(/*is_array($allindexs) && */is_array($titleindexs)){
foreach($titleindexs as $k){
if(strlen($tag)>=50) break;
else $tag .= $k." ";
}
/*foreach($allindexs as $k){
if(strlen($keywords)>=50) break;
else if(!in_array($k,$titleindexs)) $keywords .= $k." ";
}*/
}
$sp->Clear();
unset($sp);
//$tag = preg_replace("/#1#|#2#/","",$tag);
$tag = addslashes($tag);
}
1 等于 p
2 等于 e
分页干扰 所以替换
默认只对文章标题分词,要想加入内容分词请删除注释!
图片:Snap2.jpg
图片:Snap3.jpg