如何学习织梦二次开发和对织梦系统进行二次开发


本教程将介绍如何学习织梦二次开发和对织梦系统进行二次开发。

 

掌握二次开发基础知识

  1)掌握基础后台标签:

  要进行二次开发,首先要学会使用基本的织梦二次开发基础知识,这些基础知识不仅仅包括织梦标签的使用,织梦标签的使用是非常初级的,这些标签并不是指前台标签,而是二次开发用到的后台标签,例如 {dede:datalist}…{/dede:datalist}等,织梦后台的标签相当于数学中的阿拉伯数字,非常基础的,可能会有人说这太简单了吧,其实,使用这些标签是比较简单,但是,并不是每个标签都那么简单,例如,标签

{dede:if 条件} a-block  {else} b-block {/dede:if}

这个标签在后台中虽然使用频率不高,但是,这个标签也是比较重要的,是在做织梦二次开发时常使用到,像这些标签我们在做织梦二次开发时必须会。

 

  2)掌握织梦二次开发常用的类的使用:

  在织梦二次开发时,一般都要实例化一些类,特别是像织梦模板引擎类、数据库类的基本使用,做织梦二次开发不要求大家必须弄明白这些类,但是,必须会使用,这是二次开发最基本的要求。特别是模板引擎类前后台的使用非常重要,当然,数据库也非常重要。

 

  3)掌握常用的函数的使用:例如,最常用的织梦的对话框函数、中文截取函数、获取单篇文档信息等等,这些基本函数如果掌握具体代码最好,二次开发我们一般不改织梦官方代码,而是做一些基本的调用,所以,只要会使用这些函数就可以了。

 

  4)掌握php语言基本的函数:例如,定义常量函数、把字符串转成数组、把数组转成字符串、正则匹配函数等等,这些重要的常用的函数要会使用,因为,有可能会用到。

 

  5)掌握织梦系统的设计原理与规范:其实,做织梦二开发,只要把织梦系统的基本的设计原理和设计思想弄明白了,就相当于掌握织梦二次开发70%知识。这些设计原理和规范指的是,例如,圈子前后台设计时把后台操作放在了/dede/目录,而在前台则放到了/group/目录。这只是设计路径,设计方法里面的一个小小的方面,还有很多多。

 

实践二次开发

  要进行二次开发,首先得掌握二次开发的基础知识,当把这些基本的东西掌握了,接下来就是进行二次开发,到底如何进行二次开发,对于初学者来说,最好的方法就是做一个项目,因为,掌握的基础再多不去实践一个项目是无法去理解二次开发的,只有把一个项目真正的完整的开发出来,才能更好的理解织梦二次开发的基础知识,也才能更好的去进行织梦二次开发。

 

  1)如何选择一个好的项目来实践织梦二次开发 ?

  选择一个好项目是非常重要的,因为,如果选择的不好可能使用到不多少织梦二次开发基础知识,如果使用的知识基本上是失败的项目,因为,完全就跟全新开发一样,这样的项目意义不大,特别是对于初学织梦二次开发的人员来说;但是,如果一个项目过于复杂,弄个半年才开发出来,这样的效果更不好,因为,毕竟学的是二次开发,而不是全新系统开发,这二者都不是最理想的项目。

 

  2)什么样的项目才是学习织梦二次开发最好的项目?

  a) 用到的知识是以织梦系统为主,而不是以php为主,如果以php为主的话,那么,这个项目基本上就是全新开发一个系统了。毕竟是二次开发,是在织梦使用php封装了php函数基础上进行的二次开发,所以,必须以使用织梦系统知识为主。

 

  b) 以php基础知识为辅助,如果一个开发全是调用织梦系统函数,没有使用过php基础知识,那么,这个项目也不是一个好项目,虽然是二次开发,但是,我们以后开发不可能只调用织梦函数,很多时候是要用php知识来写原生态的代码。

 

实践项目

  以前想找个项目来讲解织梦二次开发,找了几个,自己也想了几个但是最后都感觉不好,要么太复杂,要么,太简单学不到知识,要么,自己设计一个项目感觉不够好。

  找来找去最后感觉,为什么不把织梦“圈子”当作一个项目呢?

把圈子当作项目的好处

  织梦系统默认是没有圈子功能的,当我们安装完织梦系统后,如果让你开发一个圈子功能,你如何开发?我们开发圈子就是对织梦进行二次开发!我们为什么不把圈子功能当成一个像数学中的例题一样来学习呢,圈子是一个非常好的学习织梦二开发的功能。

  1)把圈子当项目的原因:圈子功能是人家织梦团队经过10年左右时间的垂练,已经相当完善,与其使用其它项目,为什么不使用圈子呢。

  2)圈子项目适中:织梦的圈子是一个简单且复杂的功能,简单是相对于织梦主功能来言,但是,这个功能看上去简单,其实,相当复杂的一个小功能,最重要的是这个项目几乎用到了织梦系统的所有二次开发知识,这是非常重要的,与主程序非常紧密相关。