随着Drupal的演化,它采用的定义内容的方法越来越复杂。这个系统的中心是内容类型(content type)的概念。内容类型是存储在Drupal的数据库中的一个定义,它规定了特定内容类别应该如何显示以及它应该支持何种功能。
Drupal有两个自带的已定义好的内容类别:page和story。page的目的是用于存放静态内容,例如 "About Us" 或 "Contact Us" 页面。而 story 的目的则是用于存放更瞬态的内容——新闻条目、blog帖子等等。
创建新的 page 或 story 很简单,只有点击默认菜单上的 Create Content 链接就可以了。

插图 4-1
显然,并不是所有内容都可以归类到 page 或 story,很多站点都需要特定的内容类型,以充分表达特定类别的内容。事件描述、产品、成分描述等等,最好都用特制的内容类型来完成。
我们的模块将显示简短的名言。这些名言既不是文章也不是页面。例如,我们不希望新增加的名言与站点新闻一起显示在主页的正中央。
因此,我们的 quotes 模块需要一个自定义的内容类型。这种内容类型很简单。它有两个部分:名言的文本和名言的出处。
例如,这里有个著名的名言:
The life of man [is] solitary, poor, nasty, brutish, and short.—Thomas Hobbes.
这个名言的文本部分是 "The life of man [is] solitary, poor, nasty, brutish, and short",出处部分是 "Thomas Hobbes"。我们本可以做得更加精细,把著作的标题(Leviathan)甚至引用的页码、版本等等都包括在内。不过,在我们的简单示例中,所有这些信息都将被视为名言的出处。
因为我们的内容类型很简单,因此只用Drupal内建的内容类型工具就可以创建新的类型了。
要想生成更复杂的内容类型,我们可以安装 CCK (Content Creation Kit)模块,也许还需要安装一些 CCK 的扩展模块。CCK 提供了一套健壮的工具,可以定义自定义的域、数据类型以及特性。(在下一章中,我们将编码自己的Drupal内容类型)
但是,现在我们的需求很简单,因此我们不需要任何附加的模块,甚至不需要任何定制代码,就可以创建出这个新的内容类型。
评论
发表新评论