Drupal 6的CCK 2.0正式版发布了
今天给人做项目,用到了CCK,装上以后,发现有最新的版本发布了,应该就是正式版了.上drupal.org上一看。果然如此。
新版的CCK有了很大的改进,既包括新功能,也包括改进的代码和APIs。在Drupal5的时候,有些点子确实不错,但是限于技术的原因,以及Drupal5的局限性,我们很难或者说不能实现很多特性:比如拖动技术,用户友好的“Add more”特性,提供一个API,以及更多的工具让用户定制CCK的行为,以及提供更多的文档。
今天给人做项目,用到了CCK,装上以后,发现有最新的版本发布了,应该就是正式版了.上drupal.org上一看。果然如此。
新版的CCK有了很大的改进,既包括新功能,也包括改进的代码和APIs。在Drupal5的时候,有些点子确实不错,但是限于技术的原因,以及Drupal5的局限性,我们很难或者说不能实现很多特性:比如拖动技术,用户友好的“Add more”特性,提供一个API,以及更多的工具让用户定制CCK的行为,以及提供更多的文档。
很多人用drupal建站,需要用到drupal的权限,有时候需要实现层级的权限结构,这种层级性质的权限结构,在国内时很流行的.不少人向我咨询,drupal能不能解决这样的问题,我告诉他们,可以,完全可以.我以前做过类似的权限功能的实现,在项目中多达10+种角色,drupal看似呆板的用户管理,完全能够满足各种权限方面的需求(应该说是大部分的吧,不能太绝对了).
首先是基本的,权限,角色,这些基本的功能,要用好,看能不能实现你的需要,如果实在不行的话,推荐使用ACL,这个用于内容的访问控制.ACL是Access Control list的缩写,就是访问控制列表.下载地址在于http://drupal.org/project/acl.
书的作者是这方面的资深人士,主要讲解多媒体网站的构建心得.包括图片网站,音频网站,视频网站,还有文件管理.这本书讲解的是drupal6.x相关的。大量的使用了CCK,views模块。当然,很早以前就说出版这本书了,这次是正式出版。
Drupal这两年在国外出了很多书,看起来确实很火,drupal能够成为年度最佳的开源cms,是和这些书籍的推动分不开的,一本好书,一篇好的技术文章,能够让人少走很多弯路。
一个网站建好以后,要有好的内容,我这个网站是关于主题的,所以要从drupal.org上下载相应的主题,以展示给大家。当然,drupal6.x的主题很多的,光点鼠标就费很大的劲,下载以后对其进行解压缩,放到本地网站的themes目录下面,最主要的一点是解压后的文件,有两层,你需要复制里面的一层。因为上级目录是“themename6.x.1.2”这样的形式。最后需要将它们上传到虚拟主机上,每次不能启用太多的主题,一次20个,每次主机都要费很大的劲才能替我完成使命。112个第3方主题就这样被我放到了线上,当然,个别的地方还需要配置一下区块在区域中的位置。而且个别主题存在这样或者那样的问题。第3方的嘛,也就是供大家参考使用。如果想更加专业的话,那么还是自己订制比较好。
难点解决了,程序写好了,模块也独立出来了,但是并不意味着网站搭起来了.其实要做的东西还有很多,比如说,开始的时候,只有5个核心主题用来测试.而且只有两个节点,节点中的内容基本上是空的.
第一个问题,就是把模块中英文的地方,全都换成了汉语,另外把测试时候的2个主题换成了10个主题.这个后来遇到了一点点小问题,已解决.另外就是编辑了节点,在里面添加了内容,就是现在大家看到的.最后要解决的就是,RSS,和搜索了.
我常给人说,自己不会php,确实不怎么会,仅有的一点知识,还是学习drupal的时候顺便学习的.但是这并不妨碍使用drupal.其实很多熟悉drupal的人并不大懂php.
下面将一下,我是怎么实现这个自定义的模块的.我批判过直接修改模块的代码.实际上,自己也常常直接修改.当我看到了switchtheme,看完它的代码以后。我首先阅读了list_themes这个函数,通过这个函数的定义,我了解到了,drupal的theme是存放在system表中的。打开数据库,浏览了一下这个表的内容。如果实在不行,自己还可以直接读取数据库。我是这么想的。
先简单的介绍一下这个模块,模块的下载地址为: http://drupal.org/project/switchtheme
模块用途,就是为你添加一个主题切换区块,在这里面,你可以选择主题,进行切换.而且你可以为主题设置更加友好的可读性更强的名字,并且可以根据用户的角色,来控制哪些用户可以切换主题,哪些不可以切换.另外,从6.x开始,这个模块开始支持了Browscap模块,以根据用户的浏览器来切换drupal主题。
另外在Readme文件中,介绍了更详细的信息,你可以把主题实现大、中、小,3个版本,然后让用户在3着之间进行切换。
上次介绍了 http://themegarden.org 网站以后,我就打算把它改造成中文版的.我看到drupalmodules网站的时候,也想把它改造成中文版的,但是限于后者需要将大量的模块汉化成中文,这个计划还没有实施。但是主题花园的汉化,相对比较容易一些,而且工作量要下一些,涉及到的功能也不多。
然后就决心,自己也实现一个功能一样的网站。要实现什么样的功能呢?我就跑到http://themegarden.org上不断地点鼠标了,看看人家是怎么做的。首先,看到的就是主题切换,然后看到的是前一个主题,后一个主题这样的导航,以及随机主题,当前主题,另外就是前10个主题,后10个主题的导航。