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. 第二章 IoC Setter注入

    Setter注入又称为属性注入.是通过属性的setXXX()方法来注入Bean的属性值或依赖对象.由于Setter注入具有可选择性和灵活性高的优点,因此Setter注入是实际应用中最常用的注入方式. ...

  2. windows socket----select模型

    一般我们的网络编程都是用bind ,listen,accept,send/sendto,recv/recvfrom.在创建套接字的时候,是默认使用阻塞模式的,每当我们调用send/sendto等方法时 ...

  3. 漫谈并发编程(六):java中一些经常使用的并发构件的介绍

    CountDownLatch      它被用来同步一个或多个任务,强制它们等待其他任务运行的一组操作完毕.      你能够向CountDownLatch对象设置一个初始计数值,不论什么在这个对象上 ...

  4. Swift - 类初始化和反初始化方法(init与deinit)

    1,init():类的初始化方法(构造方法) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...

  5. 谈VC++对象模型

    一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节.对于使用VC++的程序员来说,还应该了解一些VC++对于C++的诠释.Inside the C++ Object Model ...

  6. DOM4J解析XML文档

    Tip:DOM4J解析XML文档 Dom4j是一个简单.灵活的开放源代码的库.Dom4j是由早期开发JDOM的人分离出来而后独立开发的.与JDOM不同的是,dom4j使用接口和抽象基类,虽然Dom4j ...

  7. Twenty Newsgroups Classification实例任务之TrainNaiveBayesJob(一)

    接着上篇blog,继续看log里面的信息如下: + echo 'Training Naive Bayes model' Training Naive Bayes model + ./bin/mahou ...

  8. [Android学习笔记]LayoutParams的使用

    LayoutParams的使用: 什么时候会用到此对象?动态布局,动态向ViewGroup中添加子view时,为子view设置此对象,目的是告诉父容器以何种方式呈现此子view LayoutParam ...

  9. 无需安装Mono的Jexus

    ASP.NET跨平台实践:无需安装Mono的Jexus“独立版”   在Linux上运行ASP.NET网站或WebApi的传统步骤是,先安装libgdiplus,再安装mono,然后安装Jexus.在 ...

  10. Zigbee开发(1)

    只是研究zigbee的技术,也许后续的博客不会有很及时的更新,有时间 写一点东西能让大家有所收获吧. 环境搭建 Windows 64位的操作系统 IAR7.6 for 8051 ZStack CC25 ...