2009-11-23 122 views
2

我必須開發一個CMS礦井,沒有商業的朋友......PHP CMS系統與框架構建 - PHP框架和PHP CMS

我想借此機會學習PHP框架,看看它是否適合未來(或更復雜)的開發,或至少偷一些好主意......

因此,我想輕鬆實現一個內容管理系統,同時看看一個現代的PHP框架(其中一個是受到啓發的框架,或者至少實現了MVC,我認爲它們涵蓋了所有...)

我聽說過http://www.digitaluscms.com/,與Zend框架建成,,但是這是Ruby on Rails的(我喜歡PHP的易於部署和託管的...)

回答

0

使用Joomla。它可能不會教你很多,但你會得到一個非常好的系統。專業級甚至。 Joomla有一個MVC框架,但你所做的大部分工作都是配置。但是真的有誰想要再做一個cms呢?那裏有很多人。

所有的開玩笑,Joomla是用PHP編寫的,可以很好地擴展,併爲客戶/最終用戶提供了一個很好的管理界面。它也被用在各地。

如果你真的想學習一個可用的框架,嘗試在zend或codeigniter中編寫cms。那些是美麗的框架。

1

其他人提到了各種預建CMS應用程序。如果您想在現有的PHP框架中構建自己的應用程序,請查看CakePHP或symfony。

http://cakephp.org/

http://www.symfony-project.org/

不過說真的,你應該只學習Django的,因爲它是如此真棒。

+0

yeap,我聽說過很多關於django的好東西,我只關心主機的可用性...... – opensas

+0

如果您很樂意從準系統Linux安裝中設置Web服務器,則主機可用性不是一個問題 - 在Slicehost.com某處購買服務器片。另外,除非你計劃爲服務於特定主機的客戶提供服務,否則總會有*某處*以合理的速度支持Django。 – ceejayoz

+1

在這兩個類別中還有幾個選項,所提及的不是市場領導者。查看CMS和Symfony的Drupal,Wordpress,ExpressionEngine和SilverStripe以及PHP框架的CodeIgniter。 –

3

如果你想有一個CMS建立一個真正的框架,我聽說(就在今天,其實)的Diem,這是在symfony的建(並使用Zend框架的一些組件)

也許Sympal,也是基於symfony,也可能讓你感興趣。

如果你想學習和使用symfony,那麼其中的一個可能是你的最佳選擇。


不過,因爲這兩個是不是Drupal的流行(或Joomla,或任何其他知名的CMS你可以考慮一下),我可能不會將其用於任何「真正」的網站 - 至少在學習一段時間之前不要這麼做。

+0

謝謝,這就是我正在尋找...交響樂當然是在我想要在...頂峯的框架列表... – opensas

+0

這裏提到的流行CMS對於「真實」網站都很好,不需要學習。他們不是我個人使用的東西,但以這種方式詆譭他們是完全沒有必要的。 –

+0

誰在詆譭什麼? – opensas

3

對於一個框架,我會全心全意地推薦Code Igniter。它基於MVC,超輕量級,它讓你想起Rails很多。你可以在這裏看看一個你好世界應用程序的屏幕錄像:http://codeigniter.com/tutorials/

關於CMS可能是http://expressionengine.com/,它是一個建立在Code Igniter之上的流行CMS。我不太喜歡它作爲CMS,但是你在問一個很好的平臺來開發,所以這可能是一個很好的選擇。

最常見的PHP框架是SymfonyCakePHP - 我不太瞭解CakePHP,但個人感覺Symfony太大了,我的口味臃腫,雖然非常強大。

最常用的CMSes當然是:WordPress,JoomlaDrupal。還有其他的系統可供使用,但其中大多數系統並不是真的有一個很好的平臺來構建。

祝你好運!

1

構建於CodeIgniter上的免費CMS爲PyroCMS。該演示目前已停止,但安裝程序如此嚇人,只需幾分鐘即可完成。

模塊化,多語言,UTF-8穿透性和非常容易皮膚。

不像其他的CMS'我看到建立在框架上,PyroCMS根本沒有觸及核心框架,這意味着CodeIgniter的未來升級將很容易。

0

你應該看看銀色條紋 - 除了你真的應該閱讀一個框架現在可以提供的事實之外,所以關於Rails和Django的一些基本知識對於讓自己處於一個可以決定的位置是絕對必要的你自己對你有什麼好處,什麼不對。

忽略了一個最重要的事情是RESTful-ness - 許多CMS或框架仍然不支持它,或者至少做得非常複雜。 Yuo需要閱讀REST以瞭解,爲什麼您需要一個框架或/和CMS來阻止REST。

談論Joomla這裏當然是一個笑話。

0

如果你真的想在開發一個簡單的CMS的時候嘗試一個流行的PHP框架,尋找一個真正的CMF。我現在唯一知道的是Symfony2 CMF。它是一組Symfony包,提供流行的CMS功能,如節點概念,塊,菜單,動態路由(用於路由到新創建的節點)等。

使用CMF而不是CMS阻止您配置應用程序僅使用大型管理後端和使您瞭解框架行爲。因此,即使對於非CMS相關項目,您也可以使用該框架(在我的示例中爲Symfony)!

使用像Wordpress或Drupal這樣的內容管理系統(它構建在Symfony之上)會隱藏你的框架。

PS:事實上,Symfony的CMF是唯一兼容的Symfony 2,但包的測試版已經可以爲symfony1.2 3.無論如何,有一個LTS version of Symfony 2其bug修復支持在2018年和安全支持結束2019年!