|
主题:[分享]官方手把手教你在KesionCMS V7.0基础上做二次开发(带示例文件) [收藏主题] | 转到: |
KesionCMS 代码100%开放,这对于有二次开发需求的用户,是一种福音,很多时候我们可以直接引用科汛技术人员写出来的代码,节省大量的时间。在6.x版本时,有跟大家介绍了如何在KesionCMS上做二次开发,详见:http://bbs.kesion.com/forumthread-136482.html。 但由于会员系统在V7.0版本中有所改变,所以重新整理说明一下(提示:为了更好的理解以下代码,阅读以下内容前请先看之前的开发说明http://bbs.kesion.com/forumthread-136482.html)。 说明:以下示例文件,如果没有特殊说明,则均是放在根目录下运行!!! 示例一、自己写的程序需要用到科汛会员接口验证是否登录的: 需要引用以下两个文件 conn.asp和KS_Cls/Kesion.MemberCls.asp 示例代码:test1.asp <!--#include file="conn.asp"--> <% Dim UserLoginTF:UserLoginTF=KSUser.UserLoginChecked '获取判断有没有登录 If UserLoginTF=true Then Response.Write "用户已登录,用户名为:" & KSUser.GetUserInfo(“UserName”) Else Response.write "还没有登录,<a href=""/user/login"">点此</a>进入登录页面!" End If '对象使用完毕,释放对象 %> 说明:上面代码中红色为V7.X与V6.X的区别,V7.x版本取得当前会员的资料采用GetUserInfo函数 格式: KSUser.GetUserInfo(“字段名称”) ---其中的字段名称可以打开KS_User表查看 如: KSUser.GetUserInfo(“realname”) --获得姓名 KSUser.GetUserInfo(“money”) --获得账户资金 … 示例二、自己写的页面也可以套用科汛的标签及页面模板化 如果自己写的代码希望能调用科汛的标签,则需要调用的文件有 conn.asp、KS_Cls/Kesion.CommonCls.asp及KS_Cls/Kesion.Label.CommonCls.asp 三个文件。其中的KS_Cls/Kesion.Label.CommonCls.asp发挥标签解释的作用,调用该文件后可以解释{$,{LB,{SQL,{JS等开头的标签,看以下示例: 这里我们可以套用科汛的文件代码,如复制一份map.asp我们将其改成test2.asp,代码如下: <!--#include file="Conn.asp"--> <!--#include file="KS_Cls/Kesion.CommonCls.asp"--> <!--#include file="KS_Cls/Kesion.Label.CommonCls.asp"--> <% Dim KSCls Set KSCls = New Test KSCls.Kesion() Set KSCls = Nothing Class Test Private KS, KSR,Maps Private Sub Class_Initialize() If (Not Response.IsClientConnected)Then Response.Clear Response.End End If Set KS=New PublicCls Set KSR = New Refresh End Sub Private Sub Class_Terminate() Call CloseConn() Set KS=Nothing End Sub Public Sub Kesion() Dim FileContent Dim MapTemplatePath:MapTemplatePath=KS.Setting(3) & KS.Setting(90) & "test.html" '读取模板地址,模板放到在template目录下,文件名自取,但需要和这里的文件名一致! FileContent = KSR.LoadTemplate(MapTemplatePath) FileContent=Replace(FileContent,"{$自己的标签}", "这里写上自己的函数代码") FileContent=KSR.KSLabelReplaceAll(FileContent) ‘调用科汛的全站标签替换函数 response.write FileContent ‘最后输出内容 End Sub End Class %> 注意: 第一:上面加红色的模板路径要正确,模板必须是静态文件如.html,.htm等,并将做好的模板放于Template目录下 第二:模板加载后,先解释自己的代码并替换,如上绿色的代码 第三:这句代码“FileContent=KSR.KSLabelReplaceAll(FileContent)”发挥重要作用,它完成所有科汛标签的替换。 示例三:调用会员中心的主框架 如果希望在会员中心做功能扩展,并且希望调用会员中心的主框架,则请用以下统一代码示例,则于要放在用会员主框则,则test3.asp文件放于user目录下: 文件:test3.asp 示例代码: <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <%option explicit%> <!--#include file="../Conn.asp"--> <!--#include file="../KS_Cls/Kesion.MemberCls.asp"--> <!--#include file="../KS_Cls/Kesion.Label.CommonCls.asp"--> <% '**************************************************** ' Software name:Kesion CMS 7.0 ' Email: service@kesion.com . QQ:111394,9537636 ' Web: http://www.kesion.com http://www.kesion.cn ' Copyright (C) Kesion Network All Rights Reserved. '**************************************************** Dim KSCls Set KSCls = New Test3 KSCls.Kesion() Set KSCls = Nothing Class Test3 Private KS,KSUser Private Sub Class_Initialize() Set KS=New PublicCls Set KSUser = New UserCls End Sub Private Sub Class_Terminate() Set KS=Nothing Set KSUser=Nothing End Sub %> <!--#include file="../KS_Cls/UserFunction.Asp"--> <% Public Sub LoadMain() IF Cbool(KSUser.UserLoginChecked)=false Then Call KS.ShowTips("error","<li>你还没有登录或登录已过期,请重新<a href='../user/login/'>登录</a>!</li>") Exit Sub End If %> 二次开发示例,这里写上你自己的代码内容! <% End Sub End Class %> 您只需要复制以上示例文件,然后在加红色的地方改成您自己的代码即可。其它的验证等细节都可以不用管了。 运行后顶部和左部直接引用V7模板框架了,如下图: 通过以上三个示例,相信有一点点ASP基础的用户,都可以自由在的科汛系统上做二次开发了。
点评 共 3 条乱弹琴:5.0 ★★★★★ 说得很好:5.0 ★★★★★ 56look 这个可以有,百花齐放才能香气迷人。支持科讯这种开放性的做法。 威望+2 |
|||
支持(1) | 反对(56) 顶端 底部 |
<上一主题 | 下一主题 > |