技術部落格寫作:部落格軟體

PUBLISHED ON APR 3, 2018 — BLOGGING

    部落格本質上是網站,但我們不需要自己從頭開始手刻網頁,有許多的部落格軟體或服務會簡化建置部落格的過程;透過這些軟體或服務,部落客不需要花費過多時間在技術相關議題,可以專注在寫作上。

    若將部落格軟體或服務的建置難度由易至難排列,可分為以下三類:

    • 部落格平台
    • WordPress
    • 靜態站台產生器

    這三種平台各有其優缺點,本文將逐一討論,讓各位作者們參考。

    部落格平台

    以下是一些實際的部落格平台 (順序不代表推薦度):

    註:WordPress.com 是以 WordPress 軟體為基礎所建立的部落格平台,但是無法像自行用 WordPress 建置網站時可另行加入外掛等,故仍歸類於此項。

    使用部落格平台是最簡單的方式,只要註冊一個帳號,馬上就可以開始在該平台發文。不過,免費的東西並不是真的完全免費,如同我們先前所述,有些部落格平台不允許部落客使用自訂的網域,因為這些部落格平台也是要對廣告主交待,若流量導向其他網域,他們的報表會受到影響。若碰到這種平台,最好審慎考慮是否要繼續經營。如果花一點費用,就可以用自訂網域,可以把它當成花錢租軟體的概念。

    筆者先前也用過一小段時間的部落格平台,後來就把該部落格收起來了。這類部落格平台有時會有一些額外的限制,無法滿足技術部落客的需求,像是發文字數有限制、無法處理程式碼片段 (code snippet)、無法處理數理公式等;此外,也無法像自架 WordPress 般自加外掛。若單純是文字或圖文的部落格,用不到這些額外的特性,直接用現有的部落格平台仍是最簡單的選擇。

    使用部落格平台就像是使用臉書或其他社群網站,基本上,就是註冊一個使用者帳號、選擇佈景主題,之後只要專心寫作即可。因此,我們在後續的文章中,並不會特別說明這類平台的使用方式。

    WordPress

    雖然 PHP 社群會對 WordPress 的程式碼品質頗所微詞,但 WordPress 仍然是最受歡迎的部落格軟體;根據 w3techs 的統計數據,WordPress 占全世界所有網站的 29%,在內容管理系統 (content management system) 占 60% (看這裡),由此可見 WordPress 受歡迎的程度。由於 WordPress 背負著沉重的相容性議題,不太可能隨意地更動其程式碼;不過,除了要寫 WordPress 外掛或是修改 WordPress 本身以外,單純地使用 WordPress 不用特地去學 PHP 或其他的網頁語言。

    WordPress 的強大,不僅來自 WordPress 本身,還有豐富的第三方佈景主題和外掛,大大地擴展 WordPress 的功能;甚至還有開發者以販賣或客製化 WordPress 佈景主題或外掛維生。雖然現在有許多網頁框架出現,開發者不會獨鐘 Wordpress,不過,WordPress 社群大到可以在這個生態圈內進行商業活動,可見 WordPress 受歡迎的程度。

    LAMP (Linux-Apache-MySQL-PHP) 是上個世紀最經典的網頁伺服軟體組合,大部分的網站托管服務都支援以 LAMP 這套網頁解決方案,不怕找不到托管服務,只怕太多不知如何選擇。不同的托管服務下安裝 WordPress 的方式略有不同,我們將於後文說明。

    靜態站台產生器

    靜態站台產生器 (static site generator) 是近年來新興的選項,一些知名的實際專案包括 JekyllHexoHugo 等。相對於 WordPress 等動態網站,這類軟體生成的網站是靜態網頁,安全漏洞大幅減少;此外,由於這類網站是靜態網頁,連 PHP 和 MySQL 都省下來,只要有 Apache 或 Nginx 或其他網頁伺服器就可以運作,幾乎所有的網頁托管都可以放。

    不過,這類軟體並沒有取代前述的部落格平台或是 WordPress,會用這類軟體的部落客大部分都是程式設計者,比起其他的方案,這類軟體需要較強的技術背景。主要的技術門檻來自於使用命令列環境、調整佈景主題、將網站上線等。所謂的佈景主題,就是 HTML 和 CSS 等網頁前端代碼再加上該軟體特製的模板語言,對於沒有網頁基礎的部落客來說,這些模板就像天書一般,看不懂也改不動。

    此外,這類軟體也沒有漂亮的後台來撰寫文章,大部分就是用程式碼編輯器以 Markdown 或其他標記語言寫文章後,由站台產生器轉為網頁;此外,有時候會用 FTP 或 rsync 上傳網頁、用 Git 管理專案等。對程式設計者來說,這些步驟就是一些小工具組合在一起,但有些部落客可能會覺得這些步驟太麻煩了。

    由於靜態站台產生器是技客 (geek) 寫給技客用的工具,可選擇的方案很多,但每個方案可能實際使用的人數卻不多。考量各個軟體的熱門度、文件完整度、易上手度等因素,筆者會介紹 Jekyll 和 Hugo;在這兩者之中,Jekyll 是較典型的部落格軟體,而 Hugo 則像部落格軟體和站台管理系統混合的產物。根據專案在 GitHub 的星數,Jekyll 最受歡迎,但 Jekyll 對 Windows 支援不佳,若要在 Windows 上使用這類軟體,可以考慮 Hugo。

    comments powered by Disqus