Drupal使用.info文件以节省话题(theme)和模块(modules)基本数据(metadata)。

编码:推荐使用UTF-8。这是一个没有BOM(Byte Order Mark)。

下面是一个.info的样例

name = Really Neat Widget
description = Provides a really neat widget for your site's sidebar.
core = 7.x
package = Views
dependencies[] = views
dependencies[] = panels
files[] = tests/example.test
configure = admin/config/content/example

他包含的属性有:

  • name 必须
  • description 推荐
  • core 必须
  • stylesheets
  • scripts
  • files
  • dependencies
  • package
  • php
  • version 不鼓舞
  • configure
  • required
  • hidden
  • project 不鼓舞。仅适合封装时使用
  • project status url 仅用在不提交到drupal.org上的订制模块。

解释一下:

name (必须)

这个将显示模块的名称,写成可读性强的。这里不要写成 really_neat_widget

name = Really Neat Widget

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3RldmVuaHpoYW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">

description (推荐)

最好写一下,用一行简单说明模块用途。最多255字符

description = Provides a really neat widget for your site's sidebar.

说明里能够包含链接,这样能够非常方便让使用者链接到指定页面。了解很多其它模块的信息和使用。

description = Domain manager by <a href="http://petermoulding.com">Peter Moulding .com</a>.

core (必须)

你模板适用的Drupal版本号。假设是Drupal 7就写 7.x。

注意版本号不能指定子版本号。写7.12不对

core = 7.x

stylesheets (可选)

假设你每页都须要用到CSS文件。Drupal 7同意你在这里加入。

格式能够參考主题(theme)里的 .info

stylesheets[all][] = node.css

scripts (可选)

假设你每页都须要用到Javascript文件,你能在这里加入。

scripts[] = somescript.js

很多其它信息,能够參考 Drupal 7中Javascript的管理

files (可选)

Drupal 如今支持动态加载代码注冊表。为了支持这个功能。全部模块必须在.info文件里事先预读那些包括类(classes)和接口(interface)声明的代码文件。

files[] = tests/example.test

当一个模块激活(enabled)后。Drupal将会又一次扫描全部files里声明的文件,索引全部能找到的类(classes)和接口(interface)。

当类第一次被訪问到,它就会自己主动被PHP加载。

dependencies (可选)

执行模块时所要求其它模块支持

dependencies[] = view
dependencies[] = panels

注:这里尽管仅仅用到了模块 View 和 Panels,只是他们会用到模块Chaos tools,所以会自己主动增加。

假设你要指定须要某个版本号的模块,你能够用下面表达方法

dependencies[] = modulename (major.minor)

major是数字表达主版本。minor能够是数字或字母表示次版本。.x能够用来表示不论什么次版本。下面样例

dependencies[] = exampleapi (1.x)
test_dependencies[] = autoload (>7.x-1.5)

以上样例中,模块安装Example API主板1,不论什么次版本模块(如1.0, 1.1, 1.2-beta4 etc.)

.info文件中的dependencies[]属性还同意选择指定的版本号

  • = or == 等于 (可选择:默认是等号)
  • > 大于
  • < 小于
  • >= 大等于
  • <= 小等于
  • != 不等于

版本大于1.0

dependencies[] = exampleapi (>1.0)

版本要求7.x兼容,而且大于1.5

dependencies[] = exampleapi (>7.x-1.5)

另外还支持多版本号依赖,用逗号分开

dependencies[] = exampleapi (>1.0, <=3.2, !=3.0)

还能用系统(system)作为模块名。来指定最小Drupal核心版本号。

本模块最少执行在Drupal 7.53。

dependencies[] = system (>=7.53)

package (可选)

为模块归类,方便查找。假设不写,就会在 Others。注意这里大写和小写敏感。Views和views是两类。

这里不应该用标点符号。

package = Views

php (可选)

指定模板执行最低的PHP版本号

php = 5.3

譬如这里就表示模块不能执行在5.3曾经的版本号。假设不写,就是用和Drupal同样的版本号。

有时用新版本号PHP的一些特性。当模块须要用比核心要求更新的版本号,这里才会凝视。

version (不鼓舞)

假设模块公布到drupal.org,他们会给你一个版本字符串。假设你仅仅是自己写的,能够写自己想要的版本,或者不写。

由于这里我是自己写的,没有给版本,所以是空的。

configure (可选)

显示模块配置页面的的路径。

当模块激活后。“配置(Configurre)”和“权限(Permission)”链接就会显示出来。这个链接就连到模块配置的概述(Overview)页面

configure = admin/config/content/example

点 Confirgure,就会跳转到 admin/config/content/example,配置这个模块。

required (可选)

假设模块绝对须要并不能被关闭,就要写:

required = TRUE

这些模块在Drupal安装时候就被自己主动激活(enabled)。这一般用Drupal的核心模块(譬如:节点(Node)、用户(User)等)

hidden (可选)

假设模块或者主题不可看见就设置

hidden = TRUE

一般这是用在測试模块

project (不鼓舞,仅适合封装时使用)

模块维护人员不能使用这个属性。当代码上传drupal.org。他们会自己主动在这里分配字符串。

这设置主要为了配合升级状态(Update status)模块,以致于能监控版本号升级,提醒管理员有新版本号能够使用。

project status url (仅用在不提交到drupal.org上的订制模块)

同意模块维护人员定义一个URL,让升级状态(Update status)模块来检查他们模块是否须要升级。假设模块没有在drupal.org上公布,应该在这里定义參数。URL应该指向一个XML格式。这个XML要放在 http://my.domain.com/projects/{project}/{core} ,这个样例里。

project status url = http://my.domain.com/projects

參考并做了改动: https://www.drupal.org/node/542202



版权声明:本文博客原创文章,博客,未经同意,不得转载。

Drupal 7 模 .info 文件描述的更多相关文章

  1. 文件描述符、文件表项指针、inode节点的关系

    内核使用3种数据结构表示打开的文件,他们之间的关系决定了在文件共享方面一个进程对另一个进程的影响. (1) 每个进程在进程表中都有一个纪录项,纪录项中包含一张打开文件描述符表,每个文件描述符各占一项, ...

  2. Linux内核笔记--深入理解文件描述符

    内核版本:linux-2.6.11 文件描述符(file descriptor)在Linux编程里随处可见,设备读写.网络通信.进程通信,fd可谓是关键中的关键. 深入理解可以增加我们使用它的信心. ...

  3. Linux 利用进程打开的文件描述符(/proc)恢复被误删文件

    Linux 利用进程打开的文件描述符(/proc)恢复被误删文件 在 windows 上删除文件时,如果文件还在使用中,会提示一个错误:但是在 linux 上删除文件时,无论文件是否在使用中,甚至是还 ...

  4. Linux 文件描述符和重定向

    200 ? "200px" : this.width)!important;} --> 介绍 文件描述符是与文件输入.输出相关联的整数,在编写脚本时会经常使用标准的文件描述符 ...

  5. linux专题一之文件描述符、重定向、管道符、tee命令

    本节讨论一下几个问题: 1. 文件描述符. 2. 重定向. 3. 管道符 4. tee的用法. 1. 文件描述符. 在linux系统中一切皆文件.文件夹和设备都是文件.如何用来区别不同的文件呢?这里的 ...

  6. CentOS最大文件描述符限制更改

    系统级的限制:/proc/sys/fs/file-max中设定了系统最大能打开的文件数. 查看该值可以用如下方式: [root@#panda ~]# cat /proc/sys/fs/file-max ...

  7. linux文件描述符open file descriptors与open files的区别

    一个文件被打开,也可能没有文件描述符,比如current working diretories,memory mapped files and executable text files ;losf可 ...

  8. linux文件描述符数量的坑

    ulimit -n  查看 单进程或线程,可打开的最大文件描述符数 通过ulimit -n 10240 设置文件描述符数: (当前shell生效,这真是个坑啊) 永久生效:(需要重启系统,也是个坑,好 ...

  9. Shell重定向文件描述符

    #!/bin/bash      最近在看shell,各种困惑,不过解决困惑的感觉还是很不错的.废话少说,linux中使用文件描述符来标识每个文件对象.文件描述符为一个非负整数,可以唯一标识会话中打开 ...

随机推荐

  1. hdu 4706 Children's Day 2013年ICPC热身赛A题 模拟

    题意:按字母顺序排列成n型,简单的模拟题. 当字母排到z时从a开始重新排起. 代码: /* * Author: illuz <iilluzen[at]gmail.com> * Blog: ...

  2. NET Core RC2

    .NET Core RC2/RTM 明确了时间表 .NET Core 经过了将近2年的开发,去年12月份发布的RC1版本,明确来说那只是一个beta版本,自从RC1发布以来,看到github里的RC2 ...

  3. Oracle varchar2最大支持长度(转)

    oerr ora 0650206502, 00000, "PL/SQL: numeric or value error%s"// *Cause: An arithmetic, nu ...

  4. 如何解决ORA-12547: TNS:lost contact错

    执行环境:ubuntu+oracle 11.2.0 为了启动oracle时间,出现ORA-12547: TNS:lost contact错误. 中午好好的纳,下午就无论了.以为是链接失效,关机重新启动 ...

  5. [Ext JS 4] Extjs 它 initComponent 和 constructor差分

    initComponent 和 constructor是什么 Extjs 提供的组件还是挺丰富的, 可是有时候需求更丰富. 当Extjs 原生的组件无法实现我们的要求的时候, 就须要扩展Extjs 的 ...

  6. FZU1608(线段树)

    传送门:Huge Mission 题意:给定区间范围[0,N] (2 <= N <= 50000)和M个区间 (1 <= M <= 500000)和这些区间上的权值,求最终并区 ...

  7. OC-Protocol实现业务代理

    创建一个Protocol,相当于java的接口,但,有些方法不必实现,例如以下 #import <Foundation/Foundation.h> @protocol MyProtocol ...

  8. cxf和jboss eap 6.2版本号冲突

    升级jboss版本号到jjboss-eap-6.2之后,启动项目时CXF出现异常. 在jboss-as-7.1.1.Final.apache-tomcat-7.0.37以及jboss-eap-6.1 ...

  9. cf-#189-div 2

    A题: 从前往后暴搜就OK: B题: 每次询问的时候都bfs一次 C题: 异或运算,从后往前运算. -------------分割线--------------------- D题:对于第K个人来说, ...

  10. “简密”App Store处女作开发总结

    前言 今天是我的iOS App Store上架应用处女作"简密"第一天上线的日子,简密是我从事iOS开发三年以来的第一款个人上架应用,之前做过两年的企业级应用开发以及公司的电商应用 ...