php CMS系统用框架构建 - php框架和php CMS

时间:2009-11-23 23:17:48

标签: php frameworks content-management-system

我必须为我的一个朋友开发一个CMS,没什么商业化的......

我想借此机会学习一个php框架,看看它是否适合未来(和更复杂的)开发,或者至少窃取一些不错的想法......

所以我想轻松实现一个内容管理系统,同时看一下现代的php框架(其中一个受到启发的框架,或至少实现MVC,我认为它涵盖了所有... 。)

我听说过使用zend框架和http://www.digitaluscms.com/构建的http://radiantcms.org/,但这是ruby on rails(我更喜欢php以便于部署和托管......)

7 个答案:

答案 0 :(得分:3)

如果你想要一个用真正的框架构建的CMS,我听说过基于symfony 的{{3>} (仅今天,实际上)(并使用了一些) Zend Framework的组件)

也许基于symfony的Diem也会让你感兴趣。

如果您想学习并使用symfony,那么这两者中的一个可能是您的最佳选择。


尽管如此,因为这两个不像Drupal (或Joomla,或者你能想到的任何其他知名CMS)那么受欢迎,我可能不会将它们用于任何“真实”网站 - 在至少,不是在研究它们一段时间之前。

答案 1 :(得分:3)

对于框架,我会全心全意地推荐Code Igniter。它基于MVC,超轻量级,它让你想起Rails。您可以在此处查看hello world应用程序的截屏视频:http://codeigniter.com/tutorials/

对于可能是http://expressionengine.com/的CMS,它是一个建立在Code Igniter之上的流行CMS。我不喜欢它作为一个CMS,但你问的是一个很好的平台,所以这可能是一个很好的选择。

最常见的PHP框架是SymfonyCakePHP - 我不太了解CakePHP,但个人Symfony对我来说太大了,虽然非常强大。

最常用的CMS当然是:WordPressJoomlaDrupal。还有其他无穷无尽的系统可供使用,但其中大多数系统并没有真正的平台可供构建。

祝你好运!

答案 2 :(得分:1)

其他人提到了各种预构建的CMS应用程序。如果您想在现有的PHP框架中构建自己的PHP框架,请查看CakePHP或symfony。

http://cakephp.org/

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

但实际上,你应该学习Django,因为它太棒了。

答案 3 :(得分:1)

基于CodeIgniter构建的免费CMS为PyroCMS。该演示目前已关闭,但安装程序非常糟糕,只需几分钟即可运行。

模块化,多种,UTF-8应用,非常容易皮肤。

与我在框架上构建的其他CMS不同,PyroCMS根本不涉及核心框架,这意味着CodeIgniter的未来升级将很容易。

答案 4 :(得分:0)

使用Joomla。它可能不会教你很多,但你会得到一个非常好的系统。专业水平甚至。 Joomla有一个MVC框架,但你所做的大部分工作都是配置。但是真的谁还想再做一个cms呢?那里有很多人。

除了开玩笑之外,Joomla是用PHP编写的,可以很好地扩展,并且为客户端/最终用户提供了一个很好的管理界面。它也被用于各处。

如果你真的想学习一个可用的框架,试着在zend或codeigniter中编写cms。那些是美丽的框架。

答案 5 :(得分:0)

你应该看看银色条纹 - 除了你真正应该阅读的框架,你现在可以提供什么样的框架,所以关于Rails和Django的一些基本知识对于让自己处于能够自己决定的位置是绝对必要的。什么对你有好处,有什么不对你有好处。

忽略一个最重要的事情是RESTful-ness - 许多CMS或框架仍然不支持它,或者至少它非常复杂。 Yuo需要阅读有关REST的内容,了解为什么需要一个支持REST的框架或/和CMS。

在这里谈论Joomla当然是个玩笑。

答案 6 :(得分:0)

如果您真的想在开发简单的CMS时尝试流行的PHP框架,寻找真正的CMF

此时我唯一知道的是Symfony2 CMF。它是一组Symfony捆绑包,提供流行的CMS功能,如节点概念,块,菜单,动态路由(用于路由到新创建的节点)等。

使用CMF代替CMS 会阻止您仅使用大型管理后端配置应用程序,使您了解框架行为。因此,即使对于非CMS相关项目,您也可以使用该框架(在我的示例中为Symfony)!

使用像Wordpress或Drupal这样的CMS(基于Symfony构建)会隐藏框架。

PS:实际上,Symfony CMF仅与Symfony 2兼容。但是这些捆绑包的beta版本已经可用于Symfony 3.无论如何,有一个LTS version of Symfony 2其错误修复了支持2018年结束,2019年获得安全支持!