Drupal是一套可以讓個人或社群使用者,很容易地發表、管理並組織一個網站裡大量且多樣的內容。已經有許多個人和組織採用Drupal來建立各種不同的網站,包括:
Drupal包括以下的功能:
還有更多更多!
Drupal是一套採用GPL授權的開放源碼軟體,是由數以千計的使用者和開發人員所共同維護和開發的。如果你喜歡Drupal為你所作的,請與我們一起努力,擴充並改善Drupal,以更符合你的需求。
[freemind:adg_1-3_Drupal的分類方式.mm height=500]
附加檔案 | 大小 |
---|---|
adg_1-3_Drupal的分類方式.mm | 10.21 KB |
[freemind:adg_1-4_Drupal無限可能的秘訣.mm height=500]
附加檔案 | 大小 |
---|---|
adg_1-4_Drupal無限可能的秘訣.mm | 4.2 KB |
[freemind:adg_2-1_規劃一個Drupal網站.mm height=1000]
附加檔案 | 大小 |
---|---|
adg_2-1_規劃一個Drupal網站.mm | 17.02 KB |
[freemind:adg_2-2_以Drupal建立網站的提示.mm height=750]
附加檔案 | 大小 |
---|---|
adg_2-2_以Drupal建立網站的提示.mm | 20.19 KB |
要開發一個Drupal的Module,需要思考些什麼呢?下面是一些思考的脈絡,跟大家分享。
[freemind:adg_3-1_從哪裡開始.mm height=500]
附加檔案 | 大小 |
---|---|
adg_3-1_從哪裡開始.mm | 15.64 KB |
進一步開發之前,Drupal有兩個主要的API,一個是產生網頁表單,一個是資料庫存取的API
先瞭解之後,才比較容易搭配Hook System寫出自己想要的功能。
[freemind:adg_3-4_進一步開發之前.mm height=500]
附加檔案 | 大小 |
---|---|
adg_3-4_進一步開發之前.mm | 9.72 KB |
除了 hook_menu之外,還有很多的hook_system可以使用。
hook_nodeapi和hook_settings就是兩個重要的API。
可以下載簡單的範例程式碼。
[freemind:adg_3-5_建立一個更為完整的模組.mm height=500]
附加檔案 | 大小 |
---|---|
adg_3-5_建立一個更為完整的模組.mm | 4.7 KB |
test.module.txt | 1.77 KB |
drupal的hook system是一個與眾不同的模組架構。
Drupal允許模組本身建立一定的機制,讓其他的模組可以與之相互互動,而且不需要更動到原本的模組。
這樣的方式,讓建立一個新的模組功能變得更容易,可以方便的利用既有的模組,建立起自己新的功能。
模組的運作方式如圖:
[freemind:adg_3-7_hook_system的運作原理.mm height=500]
附加檔案 | 大小 |
---|---|
adg_3-7_hook_system的運作原理.mm | 6.18 KB |
通常在進行theme的設計時,其實並不一定會瞭解drupal對於theme system的運作流程,以至於有些時候會碰到難以解決的問題。
drupal基本處理theme的流程如下:
[freemind:adg_4-1_theme_system簡介.mm height=500]
drupal的theme system運作流程,可以了解到drupal在處理版型的時候,其實預留了許多彈性,提供使用者、theme engine、模組、和theme本身彈性變化的空間。要修改一個theme到自己想要的樣子,也可以有多種的方向切入。
附加檔案 | 大小 |
---|---|
adg_4-1_theme_system簡介.mm | 3.89 KB |
從drupal 4.7之後,就用phptemplate來當預設的theme engine。因為他的彈性和強大的功能,讓很多客製化變得更方便容易。
phptemplate預設會載入幾種不同的元素,這些元素就是組合成drupal頁面的各個部份。
每個元素裡頭是html和簡單的php變數,可以方便我們依據不同的區塊定義css和html的元素,配上phptemplate定義好的變數如主導覽列、logo、站名,就組合成一個drupal的基本頁面。
下面是phptemplate預定的一些基本結構
[freemind:adg_4-2_phptemplate結構簡介.mm height=500]
(紅色箭頭則是連到drupal.org的手冊,觀看*.tpl的使用方式)
附加檔案 | 大小 |
---|---|
adg_4-2_phptemplate結構簡介.mm | 4.66 KB |
在設計theme時,最主要是要對網站呈現方式有一些想像,然後用phptemplate的規劃方式,來幫助我們規劃。
所以一個流程裡,最重要的是事前的規劃。2-1時有提到規劃好網站內容的骨幹,之後就開始可以對呈現方式的想像。依據每個部份不同的想像,頁面的版型、風格就也會有不同的呈現。
流程中,提供一個簡單的規劃結構,和一個流程:
[freemind:adg_4-3_建立theme的流程.mm height=500]
附加檔案 | 大小 |
---|---|
adg_4-3_建立theme的流程.mm | 6.98 KB |
regions[topmenu] = myregion
<?php print $topmenu ?>
在瞭解phptemplate的基本架構之後,其實利用phptemplate有一些更多的小技巧。如果懂得些微的php,可以讓你的版型更豐富。
[freemind:adg_4-4_phptemplate基礎應用.mm height=500]
p.s. 紅色箭頭為連進官網的相關資源
附加檔案 | 大小 |
---|---|
adg_4-4_phptemplate基礎應用.mm | 5.43 KB |
phptemplate的彈性還可以提供許多有經驗的老手做更多彈性的利用。
包含,除了左和右的側邊欄,提供更多的自訂區域,提供更多的元素(phptemplate變數),讓tpl可以操作使用,甚至可以改寫許多module提供的theme。
[freemind:adg_4-5_phptemplate進階應用.mm height=500]
附加檔案 | 大小 |
---|---|
adg_4-5_phptemplate進階應用.mm | 7.54 KB |
Drupal是一個高度客製化、模組化的內容管理系統。仔細考量您所需要的特色和功能,Drupal有可能是您的最佳選擇。 在您回答Drupal是否適合您之前,我們有問題要先問您:您是哪一種類型的Drupal使用者?您的需求是什麼? 我是一個Blogger,我想要...
所需技術等級:一般使用者、管理者 我正在替我的組織/公司評估Drupal,我們想要...
所需技術等級:評估人員、一般使用者 我是社群創辦人,我想要...
所需技術等級:評估人員、一般使用者、管理者、網站開發人員(某種程度) 我是小公司的老闆,我想要...
所需技術等級:評估人員、一般使用者、管理者、網站開發人員(有限程度) 我替客戶建置或設計網站,我想要...
所需技術等級:評估人員、管理者、網站開發人員(某種程度) 我是一個程式設計師,我需要...
所需技術等級:管理者、程式設計師 您知道您想要成為哪一種類型的Drupal使用者嗎?如果您知道,請看看下面的技術等級說明,以瞭解您的Drupal使用者類型所可能需要的項目。
現在,您已經知道您可以成為哪一種類型的Drupal使用者,接下來,您應該花一點時間,瞭解Drupal。 在案例研究部份,將檢視Drupal常見的應用方式,並針對所提到的運用方式展示一些實際採用Drupal的網站。這裡也會列出其他許多採用Drupal的網站。 在功能總覽部份,我們會介紹Drupal裡最重要以及最常被使用的功能。 關於使用Drupal來架設網站、而非從頭撰寫一套網站的優點,則會在自行開發vs.使用Drupal這篇文章裡進行討論。
花點時間瀏覽一下這些Drupal網站,它們展現了Drupal的多樣面貌。這些網站展示了Drupal網站可以如何地建置,以符合各個不同的功能和需求,同時仍保有設計感與動感。
我不太確定這是不是一篇回娘家文似的討論文章,不過我還是決定試著發表出來。
前幾天在我自己的小站上頭,有一位 Zerro 的網友留了一段話:
Drake,看過一些你在DTW上的文章,讓我這樣的菜鳥非常容易搞懂。
你寫的文章非常到位,很喜歡,我個人希望你能介紹幾個“DRUPAL網站案例的構建”過程文章。并且給予一定的提示幫助。比如:目前大多數的網站大致分為幾類:
1:新聞模式的
2:blog日志模式的
3:圖片/相冊模式的(也許是模板展示之類的)
4:論壇/BBS/FORUM
5:購物、商品展示之類的(這一累類似商業網站)用到的模組,和難點,以及實現同一個展示/外觀效果使用的不同方式、不同方式的利弊共用等。
親自動手實驗室學習的最基礎,但像我等初學乍練的新手,往往是不知道從何處入手,所以提了這個要求,希望 Drake有空的時候考慮一下,為我們好好講講。
先謝謝哦!
廣邀大家來一起替他(或更多人)給些建議 :)
Drupal可以符合幾種不同類型的網站的需求:
社群入口網站
如果你想要一個是由使用者來提供內容的網站,Drupal可以滿足你的需求。投稿的作品可以開放給網友進行投票,得票數高的文章將可以出現在首頁上。不好的作品和回應在獲得一定的負面評分後,會自動地隱藏起來。
範例網站:Debian Planet | Kerneltrap
個人網站
Drupal很適合只想要架設一個個人網站的使用者,你可以撰寫部落格、張貼照片,或是收集一些網站連結。
範例網站:urlgreyhot | Langemarks Cafe
嗜好網站
Drupal也很適合用來讓使用者分享他們對於某一主題的專精與熱衷。
範例網站:ia/ | Dirtbike
企業內部/企業網站
企業可以採用Drupal來建置他們的內部與外部網站。Drupal很適合這些用途,因為它的權限系統很有彈性,而且以網站為基礎的出版方式非常地便利。花不了多久時間,你的網站管理人員就能把企業網站做好。
範例網站:Sudden Thoughts | Tipic
資源分類目錄
如果你想要一個特定主題的分類目錄,Drupal也可以滿足你。使用者可以自行註冊並提供資料,編輯則能過濾這些資料。
範例網站:Entomology Index
國際化網站
當你開始使用Drupal,你就加入了一個大型的使用者與開發者的跨國性社群。要感謝Drupal的本土化功能,有許多Drupal網站是採用各種不同的語言所建置的。
範例網站:PuntBarra | cialog
教育網站
Drupal可以用來建立動態的學習社群,作為面對面教學的補充方式,或是作為遠距教育課程的平台。教育機構也可以善用其互動功能,以及提供公開內容、僅供會員瀏覽的資訊、或是會員訂閱管理等功能。
範例網站:ENGL 420S | WPA
以下是與Drupal相關的、不同軟體和平台的檢視和分析。
Telecentre.org替其位在世界各地的網站規劃一個分散式的網路。這份文件勾勒出選擇telecentre.org的網站平台時所依循的過程;我們最後的選擇正是Drupal。
要瞭解特定的需求和引領這過程的整體網站策略,請看看個別的telecentre.org網站上的策略文件。整體的願景是一個可能是在不同的平台上運作的網站網絡,包括運行在我們以Drupal為基礎的「一站支援網路」上數量不斷成長的網站。
上週末去中部某教育網路中心,講了一遍 Drupal 的簡介。學校應用我真是不太熟,不過在準備的過程中,倒是看到一些學校的範例很不錯 :)
這裡會介紹Drupal如何能夠解決你的問題的真實案例。也歡迎你與我們分享你的Drupal成功經驗。
這篇寫的太好了,讓我不得不花上睡覺時間來分享一下! (原文: http://drupal.org/node/233090 )
PSM是一個線上雜誌,因為網站經營了很久,所以擁有固定的讀者,高流量、高造訪率,也一定有廣告版位等著,有分散各處的編輯,也因為long term的考量,打算用open source陣營的產品已經很久了。在這樣的背景之下,他們選上了Drupal,但整個開發過程中也碰到了一些難題~ 這個分享就是很好的一個case study,說明open source怎麼幫助產品,而需要怎樣的know how/work才有可能達成。
因此,PCS找來的開發團隊pingVision,規劃了7種content type來達成網站的整合
他們的概念也是由Drupal的核心概念出發,把各種規劃都整合進node和CCK
因此可以注意到,圖片和相簿都是個別的node,可以透過node reference來整合
而articles裡頭也有reference到圖片的欄位,可以把文章的標題image做起
而Current Issue則規格化了最新消息的美化版本,善用既有的欄位工具,來讓編輯輕易產生好的最新消息
最後Featured Tout則是為了他們貢獻的node carousel module,專門用來產生Jquery滑動圖片的效果
讓廣告或其他想要提昇的特輯,可以吸引使用者的目光
這些難不難呢?包含gallery的頁面、image的頁面,以及Current Issue的layout,都需要花功夫
但畢竟Drupal已經把後台整理好了,而pingVision的開發團隊真的妥當了利用這樣的概念。
因此整個線上雜誌的首頁,就可以安然操縱在編輯的手中了,有圖為證:
在以往的經營,他們是整合許多發文管道,主要有Vignette 7 CMS和Typepad,因此轉移的複雜性就多了很多。
在轉移資料的過程裡,他們用了MySQL Migration Toolkit從Oracle把資料轉移到Mysql,再寫模組來跑cron把舊db的資料撈出來,餵進新的db中,並且寫了script來做圖片轉移的動作,整個從1.66Gb的Oracle資料庫中,轉移整整花上了兩天才完成所有data的import。因此轉移資料並不是一件容易,可以輕易testing的事情。
整個轉移中,非常專業的部份是就系統的URL如何Redirect到新的網站中,這是SEO的關鍵點。他們也考量於此,把舊的URL/Article id mapping到新的Drupal文章,而Google也因此在短短的時間內,可以把所有對PSM的index更新妥當,不會有死連結,更有好的SEO,維持廣告和流量。
動態網站的痛,一直以來就是效率問題。要不就花大把的銀子砸機器,database用來做多個資料庫,要不就要在規劃時一切都設想週到。PSM是一個很好的例子,一開始就打算買機器做memory cache,並且用了Drupal的Memcached模組,讓Drupal優秀的cache可以發揮作用,也是一個真正可scale的long term solution。
這樣是否真的有改善?舉例而言,page loading的時候需要做700 網址別名(path alias)的資料庫讀取,因為memcache的幫助,將這些結果cache至memory中,讓網站的效能可以到每秒60-70 request。
(譯著:純靜態網頁的效能可以是每秒3000 requet以上,drupal未開任何cache的效能可能每秒只有0.5-1個request,甚至更低。)
部份翻譯自: Popular Science Magazine (PopSci.com) Case Study
原文還有更詳細的module listing
可以由這個case探看怎麼善用一個好的Open Source工具當作基礎,用Drupal來實現媲美大型報業網站水準的雜誌。
然而能夠成功的關鍵點,還是在於網站經營者的具體想像,如何規格化、模組化(化繁為簡),以及開發團隊對於專案的認識度、背後的技術基礎、Drupal熟悉度、Open Source社群的溝通度(如何有效的取得資源、有效回饋),才能造就一個好的case,好的long term solution。
藉由啟用與設定個別的模組,管理者可以設計出一個獨特的網站,例如一個結合了知識管理、網站發佈和社群互動的網站。所以你最好能多瞭解這許多的可能性,以下就是以常見的網站平台特性來做區分的功能列表:
想要更完整的功能列表,請參考我們的功能概觀。想要參考實際的應用範例,可以瀏覽範例研究裡特別介紹的網站,或是看看一些採用Drupal的網站。
有時你們可能會考慮自行開發自己的系統,而不使用Drupal。Drupal社群非常希望你的加入,因此我們會從你的觀點來呈現一些使用Drupal的好處,而不是自行開發。我們鼓勵你在動手前,思考下列項目:
當你還在努力掙扎於讓網站符合你的需求、處在使用單純的程式語言的低階環境裡,Drupal卻有更好的方式。如果你使用Drupal,你會經歷並學習到一個被證明為強大且受歡迎的系統的內部運作方式。這對於你未來的專案,會很有幫助。
當撰寫系統架構時,處理一些無關緊要的細節常會令人感到挫折。有了Drupal,架構已經建好,你可以專注在專案裡的「牛肉」。有了Drupal,你可以減少完成工作所需的煎熬。
有數以萬計的網站在使用Drupal,drupal.org上常常同時有超過700個使用者在瀏覽資訊。這讓你在採用Drupal時,擁有以下優勢:
每一個安裝了Drupal的網站,都有一個監視模組(watchdog)。這個模組會紀錄錯誤,並在管理者進入管理介面時回報給管理者。此外,對於Drupal系統的使用者來說,網站能如預期所想的方式運作,是非常重要的一件事。因此使用者會把錯誤回報給Drupal的維護人員和模組開發者。為了使這個過程變得簡易順暢,Drupal的維護人員已經建立了一套系統,可以追蹤特殊狀況,並將問題回報給有能力解決的人。
我收集了一些範例網站,可以用來支持我的說法。請注意,他們都是很不一樣的網站哦!
想要看更多的例子,可以在範例研究和Drupal網站列表裡找到。
通常選擇自行開發系統的一個重要原因,是因為這樣可以精確地符合自己的需求。然而,Drupal本來就是設計為可以符合各種廣泛的需求,其中一個重要功能,就是彈性。事實上,你是很有機會可以採用Drupal來達成你的目標的。除了前面已經提過的模組、以及可以修改模組以符合你的需求之外,你也很容易就可以設計自己的模組。通常這是透過在檔案裡設計一些導入了某些hooks的函式。以下的函式導入了help hook,可以讓Drupal的核心程式和其他模組來呼叫。
<?php
function mymodule_help($section) {
switch($section) {
case 'admin/help#block':
return 'My module will help you get laid';
break;
}
}
?>
這種讓模組與Drupal核心進行互動的方式,已經被證明是非常好的作法。藉由使用hooks,模組可以彼此互動,並利用Drupal的基礎元件,例如節點、分類、管理和使用者系統。
Drupal已經誕生超過五年了,並且持續地在吸引有興趣且活躍的開發人員。有了這樣良好的紀錄,你可以放心地相信它會繼續成長茁壯。持續不斷的開發,對於網站的建置與規劃而言是很重要的。對於「客製化的程式」,你必須知道是否有人提供適當的文件或回應,才不會導致「維護惡夢」。
網際網路上充滿著關於溝通的想法和作法,Drupal把重點放在與未來一同成長,提供相容於標準的解決方案。以RSS為例,Drupal 4.6版就升級到RSS 2.0的標準。
我們不知道未來的網路標準或想法會是如何,一個客製化網站若要隨之更新,你可能得重寫所有的程式碼。有了Drupal,你可以確定它的彈性和模組化功能,足以隨之成長,並很容易地就能做出改變。
資訊架構(Information Architecture, I.A.)是結構化資訊(知識或資料)的實做。常根據其在使用者互動或大型資料庫裡的脈絡來進行結構化。
-Wikipedia.com
Drupal提供了一些方法將資訊進行結構化,包括版型、導覽、樣式和應用系統。它提供了一個框架,可以透過可延伸的應用系統(也就是模組),將資訊視為內容來進行管理,模組提供了使用者與內容互動的機會,例如志工管理應用系統。每一個模組都提供一個可設定的管理介面,以客製化此應用系統的行為。每一個模組的權限,也可以針對每個使用者角色來進行設定。
目前(2006/2)有大約370個模組可供Drupal 4.6版來使用,不需要特別的程式設計,就可以進行高度的客製化。你可以用CSS、PHP和AJAX來進行完整的客製化。儘管每個網站有其自己的複雜性,不過一個採用修改過版型、設定了使用者權限與模組的客製化網站,可以在幾個小時內建置完成。
排版
Drupal以三種方式支援內容的排版:區塊、邊欄和選單。4.7版有五種預設的區塊:左、右、頁首、頁尾和內容。這還可以延伸成更多區域。你可以修改Drupal的版型,使用最普遍的變動欄寬的三欄版型,修改成各種變化的排版方式。你可以使用PHP和CSS來調整Drupal的佈景主題系統。Drupal也有一個可設定的選單系統,讓你可以在區塊裡提供導覽選單。
Drupal有一個還在發展中的線框(wireframe)模組,可以讓資訊架構師使用HTML產生使用介面的元件,然後在網站上設定這些元件,以進行使用者測試。這個線框佈景樣式是可以選擇的,屬於CivicSpace版型的一部分。
導覽
Drupal支援多種導覽方式,包括全局、本地、脈絡和情境導覽。Drupal的版型系統可以設定主要和次要導覽,它們是獨立於其他導覽,在版型管理裡進行設定。
以版型為依據的導覽,常常作為全局導覽,不論是放在頁首、標籤或頁尾裡。本地導覽常會動態地被運用在分類、選單裡的子連結或動態區塊裡。脈絡導覽,例如現在位置(breadcrumb),則可以顯示目前使用者位在網站的什麼地方,也常在版型裡出現。情境導覽則是利用所出現的訊息,用來指出操作錯誤或成功。常見的情境導覽例子是使用者表單裡面的說明導覽資訊。
樣式
Drupal隨付幾套預設的佈景主題,可以讓網站進行設定,並可讓使用者來選擇。Drupal的版型範本,利用PHP來協助Drupal和其模組裡的xHTML的樣式化。階層式樣式表被用來調整顏色、色系和排版格式。佈景主題是可客製化的,可以針對網站位置、使用者狀態或內容類型設計特殊的樣式。圖形和影像可以坎入到佈景主題或內容裡。
分類
資訊架構裡的架構資訊中最主要的一個來源,就是透過使用Drupal的分類功能,以及強化了分類功能的20個以上的模組。Drupal允許你管理分類(在這裡稱為taxonomy),可以使用標籤、無階層式、階層式或多層次式的分類詞彙。資訊可以透過內容分類來進行結構化,可以在內容裡加上語意資訊。資訊架構師和網站開發人員常常會使用分類導覽的方式,讓Drupal可以符合他們的組織對於資訊流或營運模式的需求。
應用系統
Drupal大約有570個應用系統,也就是所謂的模組,而4.6版大約有360個模組可供使用。這些模組可以被區分為以下幾種類型:
本頁內容是由CivicSpace Labs的Kieran Lal所撰寫,如果你想要將資訊架構方面的專長提供給Drupal,或是對本頁內容有意見,請聯絡Kieran Lal。
當要指定專案的需求時,大多數客戶都會詢問許多同樣的問題,不論該專案是一個電子商務網站或是一個社交網路。以下所列出的是大多數專案所關心的項目,以及本手冊裡其他部份所提供的相關資訊。
注意:本文所列出的是主題,而非該項主題的教學指引。例如,「延展性:案例研究」而非「延展性:如何調校伺服性」。有些教學連結暫時還存在,但以後會移除。
Platform Support
Scalability
Security & Access Control
Administration Overhead
Auditing
Disaster Recovery
Maintenance
Documentation
Accessibility Legal Compliance
Professional support
Interoperability
原文 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 欄位的建議:
有個例外,那就是"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() .
以下譯文轉載自Jimmy's drupal的歷史
==
事情是這樣的,在ADSL依然很貴的2000年,就讀University of Antwerp(比利時)的兩位學生 Dries Buytaert 和 Hans Snijder 用無線網路分享了自己學術網路的頻寬(因為學網比較便宜)。這樣其實便是彼此分享和討論很好的開始。
因此,Dries有了一些靈感,著手設計了一個簡單的內部網路討論板,讓朋友們可以上來留些言,彼此交流交流(就像咱們的BBS般)。
在這之前,其實一直都沒有為這個程式命名,直到 Dries畢業了之後,在板上活躍的社群成員們,便想將這樣的東西從內部網路搬到internet上,讓他們可以持續保持聯繫,而不至於因畢業而斷了聯絡。因此,Dries在註冊domain name的時候,找了一個適合他們這樣性質的名稱--dorp.org--來當他們未來在internet上聯繫的網址。dorp為荷蘭語的village,其實很符合他們這樣一個小小community網站的性質。
當dorp.org上線之後,在上面發表文章的作者們也開始討論不同的話題,像是投票(moderation其實是指一種調節機制,在drupal上用來當作文章評分上線的過程)、rating、文章訂閱和分散式的註冊系統(drupal目前也支援一個id通用於各種drupal站)。dorp.org慢慢演變成一種個人實驗的環境,而上面許許多多的想法和討論,終被在dorp.org站上一點一點實現。
2001年的1月,Dries打算將他的試驗成果分享出來,用wiki(GPL,GPL)的方式釋出軟體,讓更多人可以延伸、創造出不同的風貌。而drupal這樣的名稱,其實發音為”droo-puhl”,他是荷蘭語druppel,也就是英語的drop,小水滴之意。
==
想知道更多關於Drupal的歷史,可參考2006年在溫哥華舉辦的Drupalcon裡的影片。
這個邪惡小水滴logo圖形的產生,也有一段歷史呢...
在Drupal正式成為軟體之後,當然面臨到要選擇logo的問題了,顯而易見的,這個logo一定會跟些水滴的意象,或是水的意象有關聯囉(drop英文是水滴的意思,drupal是荷蘭語的水滴)。
剛開始的想法其實很簡單,一個圓圈圈水滴,就像液態化的字母"O"一樣。
然而當drupal的社群越來越龐大,就有人提出點子說要把水滴加上臉當作logo,Steven Wittens (UnConeD)因此見立了一個3D的水滴。但是呢,這個點子很難真正成為Drupal,因為3D的圖形檔案有很難用於輸出、不容易編輯...等的缺點。
過了一段時間,logo的議題又再度被討論一次時,Kristjan Jansen (Kika)提出了idea,將兩個水滴倒一邊成為一個無限記號,然後放進了水滴的圈圈中,就變成了個臉啦。經由Steven Wittens加工過後,Druplicon真正成型了: 一個很性格的水滴,並且長著無限記號當成的眼睛,加上圓圓的鼻子,和一個搗蛋的微笑(譯著:我個人覺得這是經典)。
原著者說,他喜歡那個無限記號的眼睛,表示Drupal提供了無限的可能性 :)
==========================================
看看更多druplicon的成品 http://drupal.org/node/9068
==========================================
原文翻譯自
http://drupal.org/druplicon
藉由建立在相關標準和開放原始碼技術之上,Drupal支援並強化了網際網路作為一個媒介的可能性。這個網路媒介,讓世界各地不同的個人和團體,都可以一起生產、討論、分享資訊和想法。Drupal的主要興趣和重點放在社群與協同運作,它的彈性讓線上資訊系統和社群可以共同生產內容。