记忆盒子

把记忆装进灰色的盒子,封装起来,那年那月,重新拾起。

首页搜索目录
search
当前主题: 互联网络

zblog文章管理界面显示文章浏览数的方法

作者:Kaka    时间:2015-6-18 15:44:1    浏览:    评论:5

      zblog用了6年,至今一直用的是最经典的zblog 1.8 asp版,后面不想升级主要是不想折腾,觉得没这个必要,现在这个版本用得很好。不过话又说回来,zblog的后台管理界面确实太简单了,有一些信息我们并不能直接从后台获取,例如文章的浏览数量,评论数量等,而文章的浏览数量是我最近比较关注的问题。

      由于对zblog的asp程序比较了解,插件也开发了好几个,所以我想能否通过更改下后台管理程序,满足自己的需要,在文章管理界面直接显示每篇文章的浏览数。

      程序修改起来很容易,甚至不用任何调试,很快就改好了。看看下面的新界面吧。

zblog文章管理界面

zblog文章管理界面

      “浏览”一列是新增的。

      加了这一列后,可以很方便的看到哪些文章更受欢迎,哪些文章的用户群更多,使我们明白如何去更新网站和SEO优化。

      下面附上代码。

      打开文件

\FUNCTION\c_system_manage.asp

      找到如下函数

'*********************************************************
' 目的:    Manager Articles
'*********************************************************
Function ExportArticleList(intPage,intCate,intLevel,intTitle)
... ...
End Function
'*********************************************************

      然后替换为

'*********************************************************
' 目的:    Manager Articles
'*********************************************************
Function ExportArticleList(intPage,intCate,intLevel,intTitle)

Call Add_Response_Plugin("Response_Plugin_ArticleMng_SubMenu",MakeSubMenu(ZC_MSG168 & "(" & ZC_MSG100 & ")","../cmd.asp?act=ArticleEdt&type=" & ZC_BLOG_WEBEDIT,"m-left",False))

Call Add_Response_Plugin("Response_Plugin_ArticleMng_SubMenu",MakeSubMenu(ZC_MSG168 & "(" & ZC_MSG101 & ")","../cmd.asp?act=ArticleEdt","m-left",False))

 Dim i
 Dim objRS
 Dim strSQL
 Dim strPage
 Dim intPageAll

 Call CheckParameter(intPage,"int",1)
 Call CheckParameter(intCate,"int",-1)
 Call CheckParameter(intLevel,"int",-1)
 Call CheckParameter(intTitle,"sql",-1)
 intTitle=vbsunescape(intTitle)
 intTitle=FilterSQL(intTitle)

 Response.Write "<div class=""Header"">" & ZC_MSG067 & "</div>"
 Response.Write "<div class=""SubMenu"">" & Response_Plugin_ArticleMng_SubMenu & "</div>"
 Response.Write "<div id=""divMain2"">"

 Call GetBlogHint()

 Response.Write "<form id=""edit"" method=""post"" enctype=""application/x-www-form-urlencoded"" action=""../admin/admin.asp?act=ArticleMng"">"

 Response.Write "<p>"&ZC_MSG158&":</p><p>"

 Response.Write ZC_MSG012&" <select class=""edit"" size=""1"" id=""cate"" name=""cate"" style=""width:100px;"" ><option value=""-1"">"&ZC_MSG157&"</option> "
 Dim Category
 For Each Category in Categorys
  If IsObject(Category) Then
   Response.Write "<option value="""&Category.ID&""" "
   Response.Write ">"&TransferHTML(Category.Name,"[html-format]")&"</option>"
  End If
 Next
 Response.Write "</select> "

 Response.Write ZC_MSG061&" <select class=""edit"" size=""1"" id=""level"" name=""level"" style=""width:80px;"" ><option value=""-1"">"&ZC_MSG157&"</option> "

 For i=LBound(ZVA_Article_Level_Name)+1 to Ubound(ZVA_Article_Level_Name)
   Response.Write "<option value="""&i&""" "
   Response.Write ">"&ZVA_Article_Level_Name(i)&"</option>"
 Next
 Response.Write "</select>"

 Response.Write " "&ZC_MSG224&" <input id=""title"" name=""title"" style=""width:150px;"" type=""text"" value="""" /> "
 Response.Write "<input type=""submit"" class=""button"" value="""&ZC_MSG087&""">"

 Response.Write "</p></form>"

 Set objRS=Server.CreateObject("ADODB.Recordset")
 objRS.CursorType = adOpenKeyset
 objRS.LockType = adLockReadOnly
 objRS.ActiveConnection=objConn
 objRS.Source=""

 strSQL="WHERE ([log_Level]>0) AND (true=true) "

 If CheckRights("Root")=False Then strSQL= strSQL & "AND [log_AuthorID] = " & BlogUser.ID

 If intCate<>-1 Then
  strSQL= strSQL & " AND [log_CateID] = " & intCate
 End If

 If intLevel<>-1 Then
  strSQL= strSQL & " AND [log_Level] = " & intLevel
 End If

 If intTitle<>"-1" Then
  strSQL = strSQL & "AND ( (InStr(1,LCase([log_Title]),LCase('" & intTitle &"'),0)<>0) OR (InStr(1,LCase([log_Intro]),LCase('" & intTitle &"'),0)<>0) OR (InStr(1,LCase([log_Content]),LCase('" & intTitle &"'),0)<>0) )"
 End If

 Response.Write "<table border=""1"" width=""100%"" cellspacing=""1"" cellpadding=""1"">"
 Response.Write "<tr><td>"& ZC_MSG076 &"</td><td>"& ZC_MSG012 &"</td><td>"& ZC_MSG003 &"</td><td>"& ZC_MSG075 &"</td