逐浪云主机

立即开通

对DZNT论坛二次开发的一些经验总结!

作者:本站编辑 发布时间:2014-11-25 来源:本站原创 点击数:

对DNT二次开发的一些经验总结!
引子


这几天一直在做DNT的二次开发,产生 了一些经验,跟大家分享下。
客户需要导入旧论坛数据和开发一个新活动功能。
所以详细研究DNT的帖子相关表(dnt_topics,dnt_postid, dnt_posts1)。
向园子里的代兄和戏水请教,代兄反应极快,他说戏水是做数据转换的,比他更有经验!汗,并要我去官方论坛发贴。
我去发了,点击量很高,至今0回复。

而给戏水的消息,有去无回。

 

看来,得自已动手。花了些时间,终于明白:
dnt_topics 保存主题相关信息,注意没保存正文。主键为自动增长。
dnt_posts1 系统保存主题正文,和回帖。主键却来源于dnt_postid.

这样做可以提高查询主题列表的速度。
但如果站长需要从主题正文提取部分做为摘要显示,那就得不偿失了。

用dnt_postid 单独生成帖子主键,不太理解,反正是增加了导入其它论坛数据的难度。
或者增加了将数据导出到其它论坛的难度。
反正导入旧数据,花了好长时间,才弄明白。
人为制造门槛?


数据导入完成。

开发活动功能,还是比较顺利和快速的。基本可以借用DNT的通用类和方法。


经验

导入数据后,dnt_topics 和dnt_posts1 的 lastposterid,posterid 必须大于0,不然主题和回帖不能翻页或不显示。花了好久时间还找此原因。
需要手工改变dnt_postid的pid的初始值,不然回复贴会出现在前面,pid也会重复。
BUG

如果修改表情组名称和表情文件夹名称不同,发贴时将不能转换表情。修改默认表情名将出现图片出现红叉叉.
在默认安装下没有相册和空间,查找查看用户的所有发贴时。如/search.aspx?posterid=2988,出现"对象名 'dnt_albums' 无效。对象名 'dnt_spaceposts' 无效。"
修改广告时没有绑定原状态,展现方式每次都变成默认。
有时登陆时提示你已登陆,不用重复登陆,返回首页看不到登陆信息,查看本机COOKIE却又COOKIE记录。
用户分组的问题。现在分为积分组,管理组,系统组,特殊组。不明白特殊组存在的意义。而且还有问题。添加一个特殊组,修改时关联管理组,就变成了管理组,再修改时取消关联管理组,就变成了积分组。变不回特殊组了。
无缘无故出现错误,刷新一下又好了。如: 无法在“Discuz.Plugin.Spread”已存在的情况下创建/影像复制该文件。
...

不足(个人看法)

添加分表后,不能撤销,或删除,估计有些站长喜欢抱着试试看的心态。
太庞大,刚安装,就占用了二三十MB的空间了.asp.net 较asp 占资源,特别是内存,不太适合虚拟主机,VPS也比较悬。
还要N多操作上的不便。 比例添加表情要将相应文件夹拷到相应目录,然后刷新页面。但我在后台页面上始终找不到相应的帮助,或者说明。
上传头像时路径前加了"/",而选择系统头像时没"/";完全可以统一的。给二次开发者造成不变.
表太多了,越来越不像论坛了。
...

总结

套用一名话,革命尚未成功,DNT仍需努力。
...

本文责任编辑: 加入会员收藏夹 点此参与评论>>
复制本网址-发给QQ/微信上的朋友