您的位置:首页 > 其它

如何增加一个系统标签

2009-09-25 14:06 597 查看
如何添加一个系统标签呢?按照上一节自定义标签解析的流程,我们可以添加自己制作的系统标签。
  下面举个例子,增加一个标签{$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)""", ""),"onload=resizepic(this)", "")
End If
rsAC.Close
Set rsAC = Nothing
GetAC = TempAC
End Function

这些代码可以加在287行下面
保存之后.在模版页中插入{$ShowArticleContent(参数)},参数是文章的id,就可以取出指定id文章的内容
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: