您所在的位置:小祥子 » CMS学院 » 新云 » 正文

新云二次开发之后台标题自动TAG分词

时间:2015-02-16 编辑:本站 来源:本站原创

之前我已经发布过ASP分词技术的原理,今天为大家实践一下。

词库源于你之前添加文章或软件的tag,也就是说你每添加一个新的词到TAG,以后标题有这个词,就会自动成为TAG。

新云原有的插入已使用的标签很废,如果TAG很多,打开后还一个个找,不如直接就手动输入TAG了。

在管理员目录admin下新建一个fenci.asp代码如下

<!--#include file="../conn.asp"-->
<!--#include file="setup.asp"-->
<!--#include file="inc/const.asp"-->
<%

Function cn_split(str, x)
    Dim a, b 'As String
    Dim i, j, flag, max, temp_str
 Dim Fso,MyFso,TxtContent

 b="|"
 Dim SQL,rs
Set rs=NewAsp.Execute("select  * from NC_Tags Where ChannelID=1 order by TagID desc")

Do While Not Rs.Eof
b=b& Rs("TagName")&"|"
Rs.MoveNext
Loop
rs.close
' b="|" & Replace(TxtContent,vbcrlf,"|") & "|"
 Set MyFso=nothing
 Set Fso=nothing
    a = str
    '分词
    For i = 1 To Len(a)
        For j = 2 To x
            a = a & Mid(a, i, j) & " "
        Next
    Next
    a = Split(a, " ")
    max = UBound(a)
    '过滤重复字符串
    For i = 0 To max - 1
   flag = a(i)
    For j = i + 1 To max - 1
     If a(j) = flag And flag <> "" Then
      a(j) = ""  
     End If
    Next
    If a(i) <> "" Then
     temp_str = temp_str & a(i) & " "
    End If
 Next

     a = Split(temp_str, " ")
   temp_str = ""
   For i=0 to Ubound(a)
    If Instr(b,"|" & a(i) & "|")<>0 And len(a(i))>1 Then
     temp_str =  temp_str&""&a(i)&" "
    end if
   Next
 cn_split=temp_str
      If Len(cn_split) > 0 Then
              '删除最后一个逗号
               cn_split = Mid(cn_split, 1, Len(cn_split) - 1)&""
               End If
End Function
%>
<script type="text/javascript">
parent.document.getElementById("Tagstring").value='<%=cn_split(request.QueryString("word"),5)%>'; //title
</script>

--------------打开管理员目录admin下的目录article目录下的admin_post.asp--------------------

找到function InsertTags(){

....

}

把中间的内容删除或者注释

然后加一句_blankframe.location.href='../fenci.asp?word='+document.getElementById("searchwordbox").value;

再然后在</script>后加一句

<iframe id="nage" style="display:none;width:100%;height:155px;" frameborder="0" src="../script/blank.html" name="_blankframe" allowTransparency="true"></iframe>

大功告成!以后插入已经使用的标签就自动将匹配的词添加到文章tags中

本类热门