Drupal 中的基本概念和相关术语

  本节将介绍 Drupal 中的一些常用词语/术语,了解这些概念对你探索 Drupal 将会有莫大的帮助。

模块(Module)

  模块是用于扩展 Drupal 特性和功能性的一些代码文件。Drupal 发行包中包含了一系列核心模块,你可以直接启用这些模块来增加 Drupal 的功能。不过 Drupal 核心模块的功能比较简单,提供了一些基本的功能。Drupal 有非常丰富的第三方模块可供使用,你只需要从 Drupal 第三方模块下载页面下载并安装启用即可。你也可以创建自己的自定义模块,不过这需要对 Drupal 有比较深入的了解,也需要熟悉 Drupal API 和具备一定的 PHP 编程能力。

Drupal 第三方模块下载页面:http://drupal.org/project/modules

用户、权限和角色

  每一位网站的访问者,不论是使用帐户登录的注册用户,还是匿名用户,都被视为 Drupal 的用户。每个用户都有一个用户ID(User ID - uid),非匿名用户还有用户名、电子邮箱等信息,并且注册用户还可以通过模块为其增加一些其它信息。例如,如果启用了 Drupal 核心的 Profile 模块,就能够为用户定义和添加不同的配置文件字段。

  匿名用户的 uid 是 0,安装 Drupal 时创建的超级用户的 uid 是 1。uid = 1 是 Drupal 中的一个特殊用户,他具备在 Drupal 站点中执行所有操作的权限。

  除 uid 0 和 uid 1 用户之外,Drupal 中的其它用户通常都通过分配角色(roles)来为他们赋予不同的权限。通过创建新的角色,为角色赋予不同的权限,然后再将用户分配为某种角色,从而使用户具备在网站中执行某些特定操作的能力,例如创建文章、发表评论等。用户所能执行的操作,依照分配给他所属的角色的权限而定。

  Drupal 默认有 匿名用户 和 注册用户 两个角色,管理员同样可以通过权限管理页面为这两个角色分配不同的权限。Drupal 的权限管理功能十分精细和灵活,能够为特定的角色分配不同的权限组合。

节点(Node)

  节点是 Drupal 中的一个通用术语,表示网站中的各种内容(content)。通俗来讲,节点就是网站中的各种文章页面,以下这些在 Drupal 中都称为“节点”:

  • 手册中的页面
  • 论坛中的主题
  • 博客文章
  • 新闻文章

  每个节点都有与之对应的内容类型(Content Type)、节点ID(nid)、标题、正文、作者、发布日期等字段。也可以通过启用核心的 Taxonomy 模块来为节点增加分类/标签字段、使用第三方的 Location 模块为节点增加地点字段,以及使用功能十分强大的 CCK 模块为内容增加各种其它字段。

评论(Comment)

  评论是 Drupal 站点中的另一种内容,需要启用核心的 comment 模块才可以使用。评论是用户提交到某个节点下的一小段内容,例如,对博客的回复/留言都是评论,论坛主题的回帖也是评论。

术语表(Taxonomy)

  Drupal 通过核心的 Taxonomy 模块为内容提供了一个分类系统。它允许管理用户定义词汇表(Vocabularies),并向词汇表中添加术语(Terms)。每个词汇表可以关联到一个或多个内容类型,如此一来,就可以通过不同的词汇实现对网站内容的分类。

数据库(Database)

  Drupal 的信息存储在数据库中,不同类型的信息有各自的数据库表,例如节点的基本信息都存储在 node 表中,此外评论、用户、角色、权限、术语表及其它信息都有各自对应的数据库表。

路径(Path)

  当你通过 URL 访问 Drupal 站点时,URL中位于站点根目录后的部分被称为路径。当你在访问一个 Drupal 路径时,Drupal 将判断将哪种信息返回给浏览器。Drupal 允许启用的模块定义各自的路径,并对这些路径的请求进行响应。当有人访问这些路径的时候,Drupal 就会通过指定的模块将页面内容返回显示给用户。

  例如,当你访问 http://lugir.com/node/447 这个URL,路径就是 node/447。对这个路径进行响应的模块是核心的 node 模块,当你访问这个路径时,node 模块将处理这个请求,并将内容返回给你。

  当 Drupal 站点没有启用“简洁链接”,路径是URL中位于 '?q=' 之后的部分。当站点启用了简洁链接后,路径则是URL中位于站点根目录后的部分。

主题(Theme)

  Drupal 通过主题(Theme)来控制网站的显示,其它包括网站的外观、色彩、布局和效果。一个 Drupal 主题通常包含一个或多个PHP文件,它们用于控制页面不同部分的 HTML 输出。主题中通常也会包含 CSS、JS 和 图片,它们用于定义网页的布局、字体、颜色和其它风格。

区域(Region)和区块(Block)

  Drupal 的页面可以分为不同的区域(Regions),也可以说,Drupal 的页面由不同的区域组成。Drupal 主题中包含的常见区域有页头(header)、页脚(footer)、侧边栏(sidebar)、主内容(content),不同的主题定义的区域并不相同,例如 zen 主题中还有左边栏(first sidebar)、右边栏(second sidebar)、内容上方区域(content top)和 内容正文区域(content bottom)。

  区块(Blocks)是一些用于放置到区域(region)中的内容块,因此被称为区块。

菜单(Menu)

  Drupal 默认包含三个菜单——主菜单、次菜单和导航。在大多数主题中,只要向主菜单和次菜单中添加了菜单项,它们便会自动出现在网站的页头或页脚部分,如果没有显示,则可能需要对主题进行一些配置。导航菜单包含了管理菜单中的所有菜单项,方便用户通过导航进行一些操作。用户也可以创建自己的菜单。