Drupal 7.12进阶——Field和Views
2013-01-15 15:49 caridy 阅读(608) 评论(0) 编辑 收藏 举报找了个文章,有时间学习一下,mark。
用了Drupal一段时间,一直都只是会用最基础的功能,搭了这个站,觉得基本够用就行了。今天想在文章标题前面加“new”和“原”等图标,发觉无能为力。网上都说Drupal强大,之前一直没弄懂是为什么。看来只好花些时间研究一下了。
Drupal的中文资料实在太少,没找到什么有用的中文资料,只好Google英文了。今天研究了一整天,看了一堆英文,终于对Drupal的认识深入了一步,发现它确实是灰常强大。
懂不懂得用Field和Views插件,是Drupal入门和进阶的主要区别。Field的前身叫做CCK,在网上中文的垃圾资料都是讲CCK的,完全没有Field的资料。Field在Drupal 7中已经整合进核心代码,所以不用单独下载。但是它的的前身——CKK的页面上仍然可以找到很多有用的相关插件和信息。
Content Construction Kit (CCK)
Views则相反,原本是整合进核心代码了,但现在的版本里面有被独立了出来,所以需要单独下载。
Views
http://drupal.org/project/views
Field和Views的功能是可以让用户方便地对Drupal的原有功能做扩展。用MVC的观点来说,是让用户可以自定义Model和View:Field可以配置Model,Views则可以配置View。
先说Field的用法。Field模块其实是默认开启的,只是之前一直不明白这个模块是干什么的,所以没注意到。在“结构->内容类型”里面,可以管理内容类型。点击添加内容类型链接就可以增加一种新的内容类型,在里面可以增加新的字段。字段的类型应有尽有,可以是文字、数值、图片、数组等等。
接下来的问题就是新定义的类型怎么显示出来了。这个工作就要交由Views来负责。Views不仅可以重写,或者说覆盖现有的页面显示方式,还增加新的页面。安装Views插件之后在“结构->Views”里面可以进行配置。
上面只是对Field和Views的概要描述,接下来才是最精彩的部分。既然Views可以自定义输出样式,可不可以让它跑自定义的PHP代码呢?在强大的Drupal面前当然没什么是不可能的。要实现这种功能先下载Views PHP这个插件。
Views PHP
http://drupal.org/project/views_php
安装之后,还是进“结构->Views”。设置里面增加了可以写PHP的地方(具体列表见Views PHP主页Available handlers一节)。这里就可以加入各种PHP代码了,读数据库、显示图片神马的,完全没压力。
回到前面的问题,既然可以定制PHP代码了,在文章标题前面加图标就so easy了。应用这两个插件,就可以直接用Drupal做产品展示网站了。先用Field插件定义好单个产品的字段,然后用Views+Views PHP定义产品展示页面的逻辑和显示。用官方的话说,Awesome!