先進、易用、強大、優雅的CMS系統

來源:互聯網
上載者:User
今天我們要介紹的主角是OctoberCMS,它是一款基於Laravel這個PHP開發架構的CMS系統。我猜你可能完全沒有聽說過它,如果你是個PHPer,可能會聽說過WordPress、Drupal、Joomla等等國外知名CMS,當然還有國內老牌的帝國、Dede,新興的禪知CMS等。如果你是個Rubist,想必聽說過RefineryCMS等。如果你是Noder,也有一些CMS系統,如KeystoneJS,Ghost可以勉強算一個。當然,即使在Erlang界也有它的高效能CMS系統Zotonic。

各種語言各種架構的CMS系統如此繁多,有的適合幾個頁面的小網站,有的適合上萬頁面的大型新聞站,有的適合公司企業展示,有的外掛程式豐富,有的易於擴充,有的代碼似漿糊,有的效能處處瓶頸。在這麼多的CMS系統中,其實最為常用的無非就那麼幾個,WordPress、Drupal。拋開一些國內新聞網站使用的久經考驗的國產CMS不說,WordPress最大的優點在於外掛程式豐富,幾乎你想要的任何功能都有人以外掛程式的形式提供,主流的雲端服務WordPress都有它們的外掛程式。但最大的缺點也恰恰是這個,由於曆史包袱太重,核心代碼無法輕易的修改,隨便一弄就是數以千計的外掛程式無法使用。打個比方,就像Windows作業系統,WinXP升級到Win7,多少軟體就不能用了,崩潰了,現在Win7升級到Win10,各種遊戲玩家都在紛紛罵娘。

Drupal VS Wordpress

Drupal像是WordPress的一面鏡子,幾乎處處相反。首先Drupal在安全性、可定製性、效能等方面都要遠超WordPress,但是後果就是Drupal的易用性遠不及WordPress。想要使用Drupal,首先需要瞭解一大堆Drupal的概念,更別提開發了,都得請專業人員,難怪別人都說Drupal更像是一個開發架構而非CMS系統,相比WordPress的各種鉤子外掛程式,Drupal的開發門檻顯然要高出許多。

其實,從Themeforest這個模板出售網站也可以看出各個CMS系統的流行程度,WordPress單獨佔一個分類,裡面有各種類型CMS的模板,而其他的CMS如Drupal和Joomla等,則歸為CMS一類。Drupal為瞭解決開發難的問題,在Drupal8中使用了Symfony這款PHP架構,原因是開發人員可以更好的遵循MVC的開發模式,並且能使用許多Symfony現成的類庫。

The PHP Framework For Web Artisans

關於Laravel和Symfony的比較可以看以下這些文章:[1] 最好的 PHP 架構是什嗎?為什嗎?[2] Symfony2到底比Laravel差在哪裡?

簡單的說,Symfony功能強大,企業級,但是學習成本高,Laravel借鑒了Symfony,功能強大並且更加易用。所以Drupal之於OctoberCMS就像Symfony之於Laravel。Drupal8功能強大,能夠實現你任何想要乾的事,但是對於中小網站來說就是大炮打蚊子,而OctoberCMS關注了CMS的核心功能,使用和擴充也不複雜。

下面,我們來正式介紹OctoberCMS了!

問:Github上stars數前三的PHP CMS系統有哪些?答1:WordPress! 對!它有7500個stars,但是它在Github上只是SVN同步源。答2:Drupal! 對!它排第三,有2250個stars。答3:納尼?那是誰?答4:OctoberCMS!對!它有4600個stars,實際上的第二,名義上的第一。

那麼一個CMS系統至少需要哪些功能或特性呢?

  • 文章發布 - Wordpress的Blog Drupal的node
  • 頁面發布 - Wordpress的Page Drupal的node
  • 使用者系統 - 使用者註冊/登入
  • 許可權系統 - 訂閱者/編輯/管理員

那麼一個比較完備的CMS系統還需要哪些功能或特性呢?

  • 外掛程式系統 - 豐富的外掛程式
  • 模板系統 - 可定製的模板或主題
  • 緩衝系統 - 輕鬆地配置緩衝

那麼一個便於使用的CMS系統需要哪些功能或特性呢?

  • 安裝部署方便 - Docker image
  • 支援內建編輯 - 內部修改代碼
  • 容易定製 - 容易寫外掛程式

好了,我們來「快速上手」吧!

1. 安裝Docker,OctoberCMS Docker Image

如何安裝Docker,DaoCloud可以參見這篇文章:使用DaoCloud安裝Docker和鏡像

然後使用dragontek/octobercms這個鏡像。

$ dao pull dragontek/octobercms

OctoberCMS支援多種資料庫,這裡以PostgreSQL為例,我們也下載好這個鏡像

$ dao pull postgres

有了這兩個鏡像,我們就可以快速部署了

$ docker run --name some-postgres -e POSTGRES_PASSWORD=example -d postgres$ docker run --name some-october --link some-postgres:postgres -d dragontek/octobercms

2. 後台一覽

我們可以通過localhost/backend登入後台,初始使用者名稱密碼均為admin,當然,如果你運行Docker鏡像時進行了修改的話,使用你-e環境變數設定的值。不過,運行後登入後台再進行修改也是完全可以滴。

Admin Backend

我們可以點擊右上方的Admin Person,在「後台設定」中設定語言為「簡體中文」。然後我們可以看到左側功能表列:

Backend Sidebar

在「更新」中,我們可以查看現在安裝的外掛程式和主題,並且可以搜尋新的外掛程式和主題。

Paste_Image.png

3. 部落格和頁面

版面設定,可以看到我們能夠直接在頁面中編輯代碼哦。這裡的代碼編輯器可不容小覷,可不是WordPress那樣的白板,這裡的編輯器基本是一個小型的Sublime Text,支援多選,列編輯,自動縮排,Emmet般的HTML/CSS自動補全,功能強大到爆炸!

當然,對於固定模板的頁面,October也提供了類似WordPress那樣輸入內容的頁面,這裡的Pages靜態頁面外掛程式也提供了靜態菜單Menus的製作。

關於部落格系統,我們只需要在後台外掛程式安裝頁面搜尋blog,然後點擊安裝即可。部落格的使用非常簡單,之後會詳細講述,你可以自己先試試喲。

4. 使用者登入和註冊

在使用者中心中,我們可以使用「組件」中的「帳號」來添加使用者登入和註冊頁面。

Paste_Image.png

添加後我們還可以修改成想要的樣式,比如由tab分隔成兩個子頁面。

使用者中心頁面

登入註冊頁面

使用者系統後台

在layout模板中,我們都可以添加組件中的session模組,來擷取登入後的使用者資訊。

5. 媒體

點擊頂部導覽列的媒體,可以看到October支援豐富的媒體屬性,如最常見的圖片、視頻、音頻、文檔等。

總體來說,我們可以看到OctoberCMS的後台功能相當強大,並且可以在後台進行代碼的修改。事實上,如果是常見的功能,我們完全不用編寫任何代碼,只需要使用正確的外掛程式和正確的配置即可。

What's NEXT ?

這篇文章只是對October進行了非常簡單的講解,之後會針對OctoberCMS一些最常用,功能最為強大的外掛程式進行詳細講解,千萬別錯過了喲!

你也可以在 https://octobercms.com/resources 中的 Screencasts 先行一瞥October的強大之處。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.