views:

132

answers:

6

I'm embarking on a very big exercise to build a CMS in php. It's actually my attempt to learn PHP in a fun (and hardcore) way coming from a Java background. Java is all object oriented so oop is in my blood, but I'm finding that OOP hasn't made it yet to PHP. Most PHP is still being written today the old way without the new concepts.

I'm trying to find an example PHP CMS that's written as object oriented. I hear Xoops is. Any others you know of? or any OOP libraries in general that you know of that could help me in a CMS project.

+5  A: 

I would suggest symfony framework as it is well documented and functional framework that helped building many web applications.

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

Tomasz Kowalczyk
I'd also add the three popular CMFs built with symfony: Apostrophe, Diem and Sympal.
Maerlyn
+5  A: 

PHP5 is pretty OOP. Look for CMSes and frameworks that only work on PHP5. For example, Kohana

Fanis
+2  A: 

Concrete5 is a pretty complex OOP based CMS. Might be a harsh start but I've learned a lot by working with it.

Galapogos
+1  A: 

what you will notice is that what is more important to most cms (and framework) developers is MVC pattern implementation. Most MVC implementations in php do in fact use oop practices (some stricter than others)

+1 for symfony, and another I'd like to recommend is Kohana (built on CodeIgniter)

Also have a look at their forums, as both already have a cms or 10 built using these frameworks.

Using these frameworks brings you about 60% there, as a lot of the rudimentary tasks are taken care of.

edit also remebered this one: fatfree framework it's quite lightweight: http://fatfree.sourceforge.net/

Daniel
+2  A: 

again, +1 for symfony, but this is a large project and getting to know symfony will consume most of your time, yet if you want to dive in, its documentation is really great.

since you are trying to build your own CMS, get started with easy to grasp frameworks and build upon them. Don't waste your time on everything that has been already done. I recommend you Codeigniter MVC Framework http://codeigniter.com and for CMS, PyroCMS http://pyrocms.com which is built upon codeigniter is cool. Codeigniter is really easy to get along, and documentation is very neat and clean.

Further, if you like to start with a simple php framework, here's what Tyrehall has done, http://github.com/tylerhall/simple-php-framework . This project can act as a base for your CMS

bhu1st
+2  A: 

No one seems to have mentioned Kohana the PHP 5 only framework.

Kohana has a pretty active and very helpful community to back it up (#kohana on freenode in particular).

edit: Upon closer inspection I see someone has already mentioned Kohana.

Russell Dias