First of all, hello! I’m Stewart, and yeah, that’s pretty much it.
But anyway, I was messing around with some installations of CMS’s and, in my humble opinion, they were either too complicated or lacked features or whatever. I probably just didn’t spend enough time on them, but lets not dwell on that.
So, I did what I suppose many of us do: I started my own, superly-ambitious project. The most exciting thing about it is it’s my first PHP project! Woot. I have a decent knowledge of C++ so don’t worry, it’s all good. Anyway, enough history. I’m just looking for some friendly advice on the design.
I am planning to (and in the process of coding) a modular system. If you want pages, install the pages module. If you want a forum, install the forum module, etcetera etcetera and so forth. Each item which is accesible to users, such as a page, an album (of images), a contact form or whatever, will have it’s own ‘id’, which is just going to be the end of the url, eg. http://mysite.com/[id here]
. These will be stored in a database along with the type of the content. If, for example, the id is “home”, which happens to be a page (from the pages module), then my cms will load up the pages module, give it the ‘id’ then let it load it’s content.
Themes will have a .php file for each module they support. So I would ‘include’ the $theme/pages.php file and in it, it would load the content by calling functions like [php]<?php page::print_title(); ?>[/php].
I was thinking that the ‘core’ of the cms should provide a menu handler or something, so that there is an ‘official’ way to create a menu that hopefully all of the modules will utilise.
Anyway, I’d be really interested to hear your thoughts. Oh, and sorry if this is the wrong place to post this, I just really didn’t know where else to go.