獎金獵人是使用Drupal架設,那是怎麼使用的呢?
這個分享主要是針對沒接觸過Drupal的人做的,所以會從很外層開始講起。
Drupal是一個Open Source CMS,也就是開放原始碼的內容管理系統,硬要簡單講的話,是一個架站軟體,也就是核心給你了,安裝了就可以用的一套網站程式。
雖然說是「核心」,但又和Python的Django或是RoR是完全不同的意思。Drupal並非提供純粹原始的Web Framework,而是使用PHP將許多功能先完成,製作成許多可供延伸運用的類似API的東西,並且提供基本的功能,讓你可以安裝完之後馬上有一個網站。而藉由這些API,開發者可以做出更多的模組。
這裡所謂的API,在Drupal裡面叫做hook。你可以用這些hook來指定選單、區塊、版型、表單、使用者權限、使用者互動、甚至於外觀,但你必須了解PHP。而為了讓不只PHP的開發者加入Drupal,Drupal也有非常彈性完善的版型系統,前端設計師只要會html/javascript/css,就可以做出幾乎任意的版型。
Drupal可以解釋的還有很多。但今天要說的應該會是獎金獵人是如何使用Drupal的。
Drupal目前版本最新的有5.x及6.x,5和6基本上有許多不同之處,6.x的相關模組並沒有向下相容,因此變成類似兩種版本。若你挑選5.x,你就只能用5.x的模組,功能比較多但寫法比較不好;若你挑選6.x,你就只能用6.x的模組,許多hook、核心有做的比較好,但有些5.x的模組可能沒有。每個Open Source CMS幾乎都會面臨這個問題,目前因為6.x已經發展成熟,5.x有的功能也幾乎都有了,穩定度也出來了,因此獎金獵人是使用6.x的版本。
而Drupal 7目前已經Code freeze了,有人猜測年底會release,但也有人根據過去經驗認為要到明年中才會release。我已經試過用7.x,有改進許多地方,但麻煩的仍舊是他與6.x的模組並沒有向下相容,因此從6.x轉移到7.x會是很耗費精力的一件事。
我想這也是使用Open Source CMS的風險之一吧!因為這種網站系統的維護是靠社群,小數點的更新是必要的:若6.13到6.14的更新你沒做,很可能6.13有個安全性問題因為Drupal的有名而被駭客知道,造成因為沒更新而網站掛點。這會是很麻煩的事情。另外當社群都轉向新版(6.x->7.x)的研發,舊版的更新是不可避免的,也就等於網站必須大作改版,這也是很花力氣的事情(而且與社群經營、內容經營完全無關)。
獎金獵人除了使用Drupal 6.x架設之外,目前估計安裝了上百個模組,其中有6個是自己寫的。而theme(佈景)使用的是Zen這個版型。
前幾篇講太多獎金獵人網站發想、理念的部份,今天開始講系統的部份。但中間可能還是會穿插理念的部份,畢竟內容才是重點。而小妹並非專業的資管、資工畢業生,歡迎大家多多指教。