如何添加一个系统标签呢?按照上一节自定义标签解析的流程,我们可以添加自己制作的系统标签。

,增加一个标签{$ShowArticleContent(Article)}用来显示指定文章的内容

include文件夹里面的PowerEasy.Common.Front.asp文件.

1.首先在页面中加入添加判断是否存在这个标签的代码

'替换{$ShowArticleContent(Article)}标签
Dim strArtcileContent    
regEx.Pattern = "\{\$ShowArticleContent\((.*?)\)\}"
    Set Matches = regEx.Execute(strHtml)
    For Each Match In Matches
        arrTemp = Split(Match.SubMatches(0), ",")  
        If UBound(arrTemp) <> 0 Then 
            strArtcileContent = "函数式标签:{$ShowArticleContent(参数列表)}的参数个数不对。请检查模板中的此标签。"
        Else
            strArtcileContent = GetAC(arrTemp(0))  
        End If
        strHtml = Replace(strHtml, Match.value, strArtcileContent)
    Next

 这段代码可以加入2707行下面

在上面代码里面,我们是用GetAC()这个函数来获取指定文章ID的,关于这个函数的内容,我们在下面定义

2.加入GetAC()函数,用来获取指定id的文章内容

Function GetAC(ArticleID)
    Dim sqlAC,rsAC,TempAC
    sqlAC = "Select C.ChannelDir,C.UploadDir,A.Content from PE_Article A inner join PE_Channel C on A.ChannelID=C.ChannelID Where ArticleID = "&ArticleID
    Set rsAC = Conn.Execute(sqlAC)
    IF rsAC.BOf and rsAC.Eof then 
     GetAC = "找不到指定文章"
  rsAC.Close
  Set rsAC = Nothing
  Exit Function
 Else
        TempAC = ReplaceKeyLink(ReplaceText(Replace(Replace(rsAC("Content") & "", "/Develop/", InstallDir&rsAC("ChannelDir") & "/"), "UploadFiles_1507", rsAC("UploadDir")), 1))
        TempAC = Replace(Replace(TempAC,"onmousewheel=""return bbimg(this)""", ""),"οnlοad=resizepic(this)", "")
    End If
 rsAC.Close
 Set rsAC = Nothing
    GetAC = TempAC
End Function

这些代码可以加在287行下面

保存之后.在模版页中插入{$ShowArticleContent(参数)},参数是文章的id,就可以取出指定id文章的内容