我们以前使用的 .info 文件基本相同,只是 name 和 descrition 不同,现在我们要使用一个新指令。
; $Id$ name = "Site News" description = "Send an email message of site news to all users." core = 6.x php = 5.1 dependencies[] = "trigger"
sitenews.info 文件大部分内容看起来应该很熟悉。只有最后一行用了一条新指令。
这一行用于说明模块有哪些依赖关系。就是说,它告诉 Drupal 要想让这个模块正常工作,必须先安装哪些其它模块。
一个模块有多个依赖关系是很常见的,因此 dependencies 指令可以有多个值。正如我们在第二章中看到的,其语法基本上类似于 PHP 的数组赋值:
dependencies[] = "trigger"
如果我们需要添加第二个依赖关系,我们就再加上一行:
dependencies[] = "trigger" dependencies[] = "othermodule"
为什么要设置依赖关系?这样做有几个原因。
最常见的原因是一个模块中的代码使用了另一个模块中定义的代码。不过我们的例子不是这种情况。
另一个原因是,如果没有另一个模块,那么这个模块基本上就无法使用。 过程依赖性甚至比代码依赖性更重要。我们的模块就是这种情况。为了能让管理员给模块的主要动作分配事件,我们需要先安装 Trigger 模块并启用它。越往后看,就越清楚。
提示:Trigger 模块是 Drupal 核心发行版的一部分。你应该已经有这个模块了,不过默认情况下它并未被激活。
注:因为我们的模块与 trigger 模块之间没有代码依赖性,实际上我们可以省略dependencies[] 指令。但是,这将不能给我们的用户最佳的体验,因为他们可能拿到一个安装后无法配置的模块。
除了这条新的依赖性设置 指令,这个 .info 文件看起来应该很眼熟。现在让我们来看看新的 .module 文件的头几行。
评论
发表新评论