您在這裡

為您的模組寫個.info檔

Drupaler's 的頭像
Drupaler (未驗證) 在 2008-12-14 (周日) 23:01 發表

原文 Writing .info files (Drupal 6.x)

一個.info檔案提供一些與您的模組有關的訊息給Drupal. 這個檔案最主要的作用是提供給模組管理系統顯示用途也可以提供啟用與禁用的管理,以下是一個.info的例子:

; $Id$ name = Example module description = "Gives an example of a module." core = 6.x package = Views dependencies[] = views dependencies[] = panels

 

.info的檔案名稱必須與.module的檔案名稱相同而且要放在相同的資料夾中.例如:如果您的模組名稱為example.module那info的檔案名稱就應該是example.info.

這個檔案是一個標準的.ini 格式, 這個格式內的每一項用等號將key與value連接起來,您也可以用引號(“”)將value包起來, 而引號內的內容是可以換行的

description = "Fred's crazy, crazy module; use with care!"

.info檔案中可以包含一些註釋. 註釋的內容是放在分號(;)之後的, 而且註釋換行後需要在新的一行的最前端加上分號,最典型的例子就是放在一個.info檔案的最頂端,提供CVS ID的註釋:

; $Id$

.info 可以有以下的欄位:

名稱(必須)
name (Required)

顯示您的模組名稱. 這個名稱的寫法必須符合Drupal的大寫標準: 只有第一個字的第一個字母可以大寫("Example module", 不是 "example module" 或 "Example Module"). 於名稱中是允許有空白字.

name = “Forum”;

模組說明(必須)
description (Required)

簡短,最好是只有一行的描述,這描述將會在管理頁面中告訴管理者這個模組的作用. 請記得, 過長的描述將很難顯示於這一頁中,因此,請精簡說明,這個欄位長度限制為255個字元.

description = “Enables threaded discussions about general topics.”

核心版本(必須)
core (Required)

您的模組支持Drupal核心的版本. 支持Drupal 6 應該寫成 6.x, 支持Drupal 7 應該是 7.x, 等等. 請注意,模組不能指定確切的子版本號,換言之,支持6.8時,應該寫成6.x而不是6.8.

core = 6.x

需要其他模組(可選)
dependencies (Optional)

您的模組需要其他的模組時, 以一個陣列的方式表示. 如果這些模組不存在,您的模組也將不能啟動. 再如果這些模組存在但是沒有啟動,系統將列示需要啟動相關模組進而驅使管理去啟動或放棄.

每個dependency的字串值必須是模組的檔案名稱(不含“.module”) 而且必須以如下所示以小寫的方式書寫,空白字在這裡是不允許的

dependencies[] = taxonomy dependencies[] = comment

模組所屬類別 (可選)
package (Optional)

如果您的模組來自於其他模組或是專門用於其他模組, 請在這裡輸入組(package)的名稱. 如果您留下空白, 系統將自動將您的模組歸類為其他(other).一般來說,這個欄位只適合大的多模組封裝,或者是其他模組的擴充, 例如: CCK, Views, E-Commerce, Organic Groups以及 類似的. 所有其他的模組應該在這裡留下空白. 準則上來說,有四個或是更多的模組具有相關性 (或是全部針對一個模組), 此時是建立一個新的群組的好時機. 不然,最好還是不要.

如果字定義一個新的模組群, package字串是用來將所有的模組們聚集在一起, 並且將他們在模組管理上顯示出來; 那個字串也因此會顯示在頭部, 而模組部份會顯示在其下,而且在所有的.info中必須保持一致(拼字與大小寫). 這個字串不能使用任何標點符號而且應該遵循剛剛在Node說過的-Drupal 大寫標準.

package = Views 給package 欄位的建議:

  • Audio
  • Bot
  • CCK
  • Chat
  • E-Commercev
  • Event
  • Feed parser
  • Organic groups
  • Station
  • Video
  • Views
  • Voting (if it uses/requires VotingAPI)
  • Location

有個例外,那就是"Development", 這個主要是用在與程式開發工具相關的模組 (Devel, Coder, Module Builder...).

php版本 (可選)
php (Optional)

就好像6.x, 模組與版型或許需要指定最小的PHP版本. 他們可以透過以下的做法來定義:

php = 5.1

以上的例子指出, 這麼模組/版型將不能在PHP 5.1以前的版本工作. 如果模組使用新版本PHP的一些特性(增進 XML 處理, 物件迭代器, JSON, 等),這個宣告是很有用的.如果沒有指定, 將會與Drupal核心所指定要求版本相同. 一般模組都是不需要指定PHP版本的, 除非她們需要PHP的版本比核心要求的更新. 參閱PHP 手冊以了解PHP版本更多訊息.

版本 (不鼓勵)
version (Discouraged)

當新版本以及原始代碼已經發布,這個版本號的字串由drupal.org所提供, 然而,如果您的模組沒有放在drupal.org, 您可以為您的模組編上您所想要的版本號..

自.info檔登入CVS沒有給定版本前, 使用者直接從CVS取得她們的模組將不會有版本字串.鼓勵這些使用者使用CVS來部署模組以取得準確的版本字串提供給admin/build/modules頁,進而能讓在目錄下的模組直接在CVS下確認..

專案(不鼓勵, 僅適合封裝時使用)
project (Discouraged, packaging use only)

模組維護者不應該使用這個欄位. 在drupal.org中的封裝程式,將自動提供一個字串,以識別的這個模組是來自哪個專案. 這個主要是提供給模組升級狀態使用,因此Drupal安裝器可以監控那些已經安裝好的模組版本,並且當有新的版本可用時通知管理. 進一步資料,請參考drupal_parse_info_file() .

Drupal版本: