DTCMS添加栏目教程

转载请添加本文章链接,否则你懂的!

近日,由于业务需要,需要在DTCMS的基础上添加些个栏目,但是由于DT现有功能并不支持添加栏目,据说新版马上要出来(新版好像支持的),如果能等新版本出来的人就不用看本教程了,兄弟我将添加栏目的过程做了个记录,希望对要添加栏目的码工们有个帮助

进入正题(我们以添加资讯类栏目为例,其它类型方法类似,不再赘述)

一、其中有几个地方必须添加的,我先列出来BLL,DAL,Model,这是三层的基础,所以需要添加基类

方法:复制资讯类栏目的类,原始版本中是Article.cs,这三个模块中都要复制,复制后重命名为Institutel.cs(这是我添加栏目的类,名字你自己定,后边都以这个为例),然后将其中的Article全部替换成Institute,这个大家应该都会吧,不上图了

二、接下来,在web/admin/下直接复制Article文件夹,重命名为Institute,这个文件下有三个文件主要功能实现增删改查,其中每个文件中可能都包含一些Article的东西,替换成Institute,注意大小写,我第一次做的时候,出了好多错误,原因就是里头有的是小写article,结果让我给换成Article了,当然大写的你不要小写了,这个比较简单基本都是直接替换就行,中是小心就好,也不用上图了吧

三、在web/aspx下添加对应页面文件即代码类,institute.aspxx即institute_show.aspx,其中代码(前后台都有)中也包含多个Article,你也需要替换成institute,这个也简单,和第二步一样,没什么可说的,换就行了

四、同理,在Templates下添加institute.htm和institute_show.htm,该改的都改了,这个也不难

真正需要修改的内容在下边:

五、修改Templates下的_header.htm这里添加上首页才会显示,如图:

哇,这个图上的有点恶心,后边的尽量弄好点。
六、修改Model下的webset.cs,其中需要添加字段即属性:
//第一对
        private int _institutepagenum = 15;
        public int InstitutePageNum { set { _institutepagenum = value; } get { return _institutepagenum; } }
//第二对
        private int _institutepagenum_client = 20;
        public int InstitutePageNum_Client { set { _institutepagenum_client = value; } get { return _institutepagenum_client; } }
就这两对,就可以了
七、修改Web/XmlConfig下的Urls.config
添加对应栏目模块,不贴图了直接上代码:(以下代码可以直接复制上就可以)
  <rewrite name=”institute” path=”/institute.aspx” pattern = “/institute.aspx$” page=”/institute.aspx” querystring=”" /> <rewrite name=”institute_list1″ path=”/institute/{0}.aspx” pattern = “/institute/(\d+)*.aspx$” page=”/institute.aspx” querystring=”classId=$1″ /> <rewrite name=”institute_list2″ path=”/institute/{0}/{1}.aspx” pattern = “/institute/(\d+)*/(\w+).aspx$” page=”/institute.aspx” querystring=”classId=$1^page=$2″ /> <rewrite name=”institute_show” path=”/institute/show/{0}.aspx” pattern = “/institute/show/(\d+).aspx$” page=”/institute_show.aspx” querystring=”id=$1″ />
八、在UI下的BasePage.cs中的枚举Channel中添加Institute,MagagePage.cs中也一样,也是要添加这个
九、还是UI下,复制Label_Articles.cs重命名为:Label_Institute,cs,这里头要改的东西和前边的差不多,不用再说了。
以下内容主要针对管理时的东西,不然管理不出来
十、修改admin_index.aspx,这个在Web/Admin/下
添加导航,这是必须的,不然管理界面出不来对应模块,我加粗的这行,以下内容你就添到对应位置就行,原来代码中都有和这个差不多的内容,你添加上就行了
   <!–导航菜单,与下面的相关联,修改时注意参数–> <div id=”tabs”> <ul><li onclick=”tabs(1);”><a href=”Article/List.aspx” target=”sysMain”><span>资讯模块</span></a></li>    <li onclick=”tabs(2);”><a href=”Institute/List.aspx” target=”sysMain”><span>院所概况</span></a></li> <li onclick=”tabs(4);”><a href=”Pictures/List.aspx” target=”sysMain”><span>图文模块</span></a></li> <li onclick=”tabs(5);”><a href=”Downloads/List.aspx” target=”sysMain”><span>下载模块</span></a></li> <li onclick=”tabs(6);”><a href=”Contents/List.aspx” target=”sysMain”><span>内容模块</span></a></li> <li onclick=”tabs(7);”><a href=”Feedback/List.aspx” target=”sysMain”><span>互动管理</span></a></li> <li onclick=”tabs(8);”><a href=”Admin_center.aspx” target=”sysMain”><span>系统管理</span></a></li> </ul> </div> 然后在下边添加对应的左边菜单,不然你会发现你管理的是图文模块,或者其它模块的功能
        <div> <ul> <li><a href=”Institute/Add.aspx” target=”sysMain”>发布信息</a></li> <li><a href=”Institute/List.aspx” target=”sysMain”>信息管理</a></li> </ul> <ul> <li><a href=”Channel/Add.aspx?kindId=<%=(int)Channel.Institute %>” target=”sysMain”>增加类别</a></li> <li><a href=”Channel/List.aspx?kindId=<%=(int)Channel.Institute %>” target=”sysMain”>类别管理</a></li> </ul> </div>
十一、添加完之后,记得在模板管理中重新生成下(前边可能有些工作通过这个就可以实现了,不过以防止出错,改了也无妨),不然,你会发现只有一个页面上有你添加的栏目,其它页面上都没有
十二、忘了一步:
这样修改完之后,你在后台管理时,如类型管理,或者添加类型时,会发现不是你对应的内容,这样操作:
首先添加一些栏目,这样在数据库中就添加上了,然后进入数据库中,首先复制对应数据表,如我复制的是dt_Article这个表,改成了dt_Institute,当然你的栏目中的新闻与资讯中的就一样了,这个你后期改或者,重新加就行了
其次是要修改Channel表中的内容,因为原来的子栏目都有个KindId,具体与在Channel类中枚举的顺序应该是对应的,所以如果你的栏目如果添加在资讯中心之后,就需要把原来这个表中的KindId这个字段的值,0,1之外的都加上1,不然你会发现图文中心的子栏目显示在你的栏目中,也就是栏目的子栏目显示是在这个字段控制的,当然,你在管理中添加的子栏目不受影响,嘿嘿,是不是有点晕,打开数据表看下,应该就不晕了,搞代码的看懂这个应该不难。
以上我说的,可能有点笼统,而且也比较乱,大家凑合着看吧,有时间了再来条理细化,有什么不懂,或者好的方法,大家一起共享下,如还有不明白,请到DTCMS技术群,三群中交流!
posted @ 2013-04-27 08:45  SOUTHER  阅读(3039)  评论(0编辑  收藏  举报