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

分页干扰 所以替换

默认只对文章标题分词,要想加入内容分词请删除注释!

 DEDEcms中根据文章标题自动获取tag的方法 图片:Snap2.jpg
 DEDEcms中根据文章标题自动获取tag的方法 图片:Snap3.jpg
 DEDEcms中根据文章标题自动获取tag的方法