你在这里

drupal7教程-创建模块系列三:告诉drupal你的模块信息【drupal爱好者】

摘要:.info文件

所有的模块必须有一个'modulename.info'文件, 它包含了模块的基本信息。

一般的格式如下:

name = Module name
description = A description of what your module does.
core = 7.x

对于我们教程中的实例的模块,我们将用current_posts来代替modulename。如果

没有.info文件,模块不会显示在模块列表里。以下是实例模块的内容

name = Current posts
description = A block module that lists links to recent posts.

core = 7.x

增加一个名字为current_posts.info的源文件,并且将此文件放在目录

sites/all/modules/current_posts下。

注意:如果你拷贝或者粘贴这个上面的代码,要确保描述数据中不包含换行。否

则,.info文件不会被正确解析。

.info文件的细节

name (必须)
显示你模块的名字。它应该遵循drupal的写法标准:仅仅第一个单词的第一个大

写字母是大写的((比如:"Example module", 而不是 "example module" 或

"Example Module")。
name = Current posts

description (必须)
一个简洁、合适的描述可以告诉管理员这个模块是起什么作用的。过长的描述会

使管理页面很难看,因此请尽量简洁。这个字段长度限制在255个字符。

description = A block module that lists links to recent posts.

描述也可以链接到文档或者源码。下面的例子展示了链接到作者。它也能链接到

Drupal.org的一篇文章。有时候,在线文档其实比readme文件更有好处。

description = Domain manager by <a

href="http://5iphp.com">5iphp.com</a>.

core (必须)
你的模块为哪个drupal版本开发。对于drupal7,核心应该是7.x。注意:模块不

能写成某个特殊的某个druapl分支的小版本。比如7.x是正确的,而7.2则是不正

确的。
core = 7.x

files (可选)
drupal现在支持动态代码载入注册。为了支持这个功能,所有的模块必须在.info

文件中声明一个包含类和接口描述的代码文件。比如
name = Example module
description = "Gives an example of a module."
...
files[] = example.test
当一个模块被启用,drupal将重新扫描所有生命的文件,并且索引所有它发现的

的类和接口。当有权限的时候,这些类会自动被PHP载入。

dependencies (可选)
有许多的额外选项会出现在.info文件里。其中之一就是dependencies。如果一个

模块的启用依赖于另一个模块,用如下的语法结构列出所有依赖的模块
dependencies[] = taxonomy
dependencies[] = comment
对于示例模块,这个选项没有被用到,我们就没有写。如果dependencies被设置

,则所有依赖模块被启用以后,你的模块才能启用。

package (可选)
如果一个模块有一个package字符,在admin/build/modules页,它将和其他有相

同目录的模块列在一起。如果package字符没有设置,模块将被列在“其他”这个

目录下。如果你的模块不是非常的完美,不要单独的设置一个package字符。如果

拿不定是不是要作为一个package,那么就让这个字段留空。
package = "Your arbitrary grouping string"
建议package字段用下面列表里的名字
    Administration
    Commerce
    Development
    Fields
    Media
    User interface
    Views
    Voting (if it uses/requires VotingAPI)

.info文件还有一些其他很少被用到的选项,在本教程中就不提了。如果想得到更

多的细节,请参考http://drupal.org/node/542202

检查:
你的模块现在应该出现在模块列表里了。去“模块”菜单并拉到列表的底部,产

看"其他"目录。你可以看到模块Current posts。

drupalTechnology: