You are hereDrupal
Drupal
Drupal的工作原理(资料搜集)
人工翻译:葛红儒 Eskalate 科技公司
资料来自互联网及drupal官方wiki
在这一章,我们为你给出一个 Drupal 的概貌。关于系统的每一部分如何工作的详细信息将在以后章节中介绍。在这里,我们将涉及到 Drupal 运行所用到的技术堆栈,构成 Drupal 的各个文件,和各种不同的概念术语,比如节点、钩子、区块和主题。
什么是Drupal?
Drupal 是用作建设网站的。它是一个高度模块化,开源的 web 内容管理框架,它重点建立在合作之上的。它是一个可扩展的,适应标准的,并努力保持简洁代码和较小脚 本的系统。Drupal 发布版中包含基本的核心功能,其他的额外功能可通过安装模块来获得。Drupal 被设计为可被定制的,但是定制是通过覆写核心功能或者增加模块来完成的,而不是修改核心组件中的代码。它同样成功的将内容管理和内容表示两者分离。
Drupal 可以被用来建立一个 Internet 门户;一个个人的、部门的或者公司的网站;一个电子商务站点;一个资源分类站点;一个在线报纸;一个图库;一个内部网,这里仅提到了一部分。它甚至可被用来教授一个远程学习课程。一个专注于安全方面的小组,通过对威胁的反应和发行安全更新来保证 Drupal 的安全性。还有一个繁荣的社区组织,包括用户、 站点管理员、设计者和 web 开发者,非常努力的工作着,以持久的改进软件。可参看 http://drupal.org 和 http://groups.drupal.org。
技术堆栈(Technology Stack)
Drupal 的设计目标是既可以运行在廉价的 Web 主机上,也可以适应大量运算的分布式站点。前一目标意味着使用最流行的技术,而后者则意味着仔细的严格的编码。Drupal 的技术堆栈如图1-1所示。

图1-1 Drupal 的技术堆栈
操作系统位于技术堆栈的最底层,Drupal 可以不用太关注这一层。在任何支持 PHP 的操作系统上都可以成功的运行 Drupal。
支持Drupal,请投上你珍贵的一票

去年,Drupal获得了webware100 的完全胜利。 通过赢得这次胜利Drupal Association 获得了能够支持Drupal Conferences 的基金,并且购置了一些基础硬件设施。但是比获得奖金更好的是,Drupal受到了更多人的喜爱和关注,越来越多的人开始使用和见证drupal的强大。
今年,Drupal将再次参加角逐,懒人作为drupal的忠实拥护者和使用者,希望你能够投Drupal一票 来使drupal再次拔得头筹!更希望你能介绍drupal给更多的朋友。
drupal模块专题(7)节点功能增强
# 5. 节点功能增强
包括对单个节点内容特性及管理功能的增强,如excerpt模块允许用户添加摘要。
* Diff:
增强了drupal自带的‘修订(revision)’功能,可以方便的显示出不同版本内容见的不同。
* Event:
跟踪事件并通知用户。推荐先安装flexinode模块。可以将任意节点纳入工作流程(workflow),节点状态成为一个事件(event),其变化将自动通知用户。
* Excerpt:
摘要模块。Drupal发布内容时只能用正文的开头作摘要,然后根据设定自动截取摘要。启用摘要模块就可以不受此限制,发布内容时将单独有一个摘要栏供作者随意填写。
* Node (key)words:
可以为每个节点设定关键字,利于搜索引擎排名。
* Pathauto:
自动为节点,类别,用户等生成路径别名。
* Node Moderation:
类似drupal自带的允许用户对评论评分功能,此模块允许用户对节点内容评分,根据评分自动更改节点状态,如发布/拒绝/提升到首页等。
* Node privacy by role:
一般用户可以设定自己发布的内容是否对某些用户群隐藏。
* Node_import:
通过CSV(Comma Separated Values)文件格式导入节点。
* Scheduler:
事先规划节点内容发布或撤销的时间表,到时自动执行。需要通过cron运行。
* Side Content:
在发布节点内容时可以将部分内容选择性的显示在边栏的区块里,可以用于强调某部分内容,类似有的书籍或杂志的边栏导读。
drupal模块专题(5)输入格式
# 3. 输入格式
各种输入法过滤器,所见即所得的文本编辑器模块。这些模块一般都需要加入“输入方式(Input Method)”才可以起作用。
* Attached node: (4.5.0)例
开启该模块并将attached node加入输入法过滤器后,将可以在发表文章时使用 [node: node-id] 的格式来引用另一节点的内容。显示出来的引用类似于一般论坛里常见的回复引用的样式。管理员还可以选择开启一些参数控制,使用户可以修改引用的题目,显示 样式等。虽然4.6.0的模块列表里没有,但在4.6.x里使用似乎没有问题,这里有一个例子。
* Bbcode: (4.5.0)
支持BBCode输入格式。
* Codefilter:
简单的输入过滤模块,方便代码输入。
* Contextlinks:例
用户在输入链接时,可以赋予链接以不同的类型,此链接将按照预先设定的方式显示,比如问题类链接加一个小问号图标,文档类链接加一个文件图标等等。一个截屏的例子可以看这里。
* FCKeditor:
支持FCKeditor输入格式。
* freelinking:
类似wiki的输入方式,可以方便站点内部内容间的链接。此模块只是定义了类似wiki的输入过滤法,并不是实现内容节点的wiki化。
* HTML corrector:
自动检测用户输入的HTML语法,是否每个标签都有对应的结束标志以及嵌套是否正确。
* Htmlarea:
支持所见即所得的HTMLArea输入方式。这里有一个例子。
* Inline:
加入了[inline:N]的输入格式,此格式将生成一个链接,指向该节点通过drupal自带的upload模块上传的第N个附件,用于方便地在文章内容中引用附件。
* interwiki:
支持wiki输入法,便于引用外部链接。如[w: drupal]将显示一个链接指向wikepedia的drupal网页。类似的也可以方便的生成指向ebay,google搜索,在线字典等常用页面。
* Markdown with SmartyPants:
支持Markdown输入格式来自动生成XHTML标记,支持SmartyPants的自动转换生成特殊Unicode符号的功能。
* Quote:
开启后用户在添加评论时可以方便的点选引用原文。引用部分用特殊格式显示以作区分。
* SmartyPants:
自动将文本字符转换成对应的特殊Unicode符号。
* Smiley:
使用表情符,自带了一些基本的表情符,用户可以自己添加。
* Textile:
支持Textile输入格式,自动转换生成XHTML标记。
* TinyMCE WYSIWYG Editor:





