Building a content management system

Associate
Joined
13 Jan 2007
Posts
2,424
Location
Belfast,Northern Ireland
For a project I have to develop a radio station website, already I have a massive list of things I want to change and do. Upon reviewing all the e-mails etc I have noticed at the very end they say this:

More than anything obviously, we want a functioning and lasting website, so an important requirement would be for a relatively easy ability to maintain the website through a fully content managed system.

Essentially I have just freaked out, surely building a CMS is a huge job? Or because its meant for just the one website it's relatively easy?

Can anyone give me an idea of time it would take? Just developed in php isnt it?
 
Is this an actual client or some uni project? Not sure on your requirements.

If the radio station is a client then why not take an established base. Wordpress for example, and build a CMS theme over it.
 
Problem is this is my university final year project, I thought taking a web related project was a bit weak in the first place as it will only offer so much in terms of 'showing off my skills.' So if I was to use wordpress, even if I created my own theme and everything....it looks a bit pants for a computer science student, no?

*Its my final year project but will be used by the university radio station when complete.
 
Building a fairly basic cms is not that hard. If you make as much of the code generic then a lot can be reused for different aspects of the CMS. It essentially just needs to run the content pages and a blog maybe.

Have a look at some frameworks which will make it a little easier and quicker.
 
Problem is this is my university final year project

In that case, why not just built yourself a very simple CMS? Even if you could get away with using an existing CMS, I would be willing to bet that you'd score extra points for having built your own CMS. A very basic CMS, while not exactly easy to build, isn't overly difficult and shouldn't take too long.

Building a CMS can actually be a good thing as it'll give you the chance to learn a fair bit.
For example...
- If your site has a Google Map, have the ability in your CMS to edit the map and add markers.
- Add in a form manager so that existing forms can be edited and added to.
- If you have a bunch of images, add in a basic image editor.


--------------------------------

So, true story, we were using an off the shelf CMS but a client wanted a very very basic custom CMS so we built one for him.

The CMS we built was VERY basic and only designed with one site in mind but we liked the freedom it afforded us so one year later, it had around 100 sites on it. Anytime we needed or wanted to do something that the CMS couldn't do, we built it in. Two years later we had v2 which had A LOT of additional functionality and a front end which was a bit easier to use. v2 also had over 250 websites running on it.

Fast forward to today and after 3 hair-pulling months of working 120+ hours/week, v3 is 95% complete and we're very proud of it. It's been completely redesigned with the end user in mind so it's VERY easy to use. On top of that, through the use of user accounts and advanced settings options, we've managed to do it without hurting any of the hardcore developer features. Also, due to a large amount of jquery and ajax, it's VERY VERY fast.

How far have we come? Well, we work with a fairly well known and award winning digital agency and they have had the big corporate CMS players come and give them in house demos of their respective CMS's and after all was said and done, they said that without a doubt, ours was not only faster and easier to use but, is far more powerful in what it allows you to do. It also looks a lot better and thanks to CSS3, is also very easy to reskin.

Sorry to ramble on like that, I guess my point is, start with a simple CMS and see where it takes you. You could end up with something special.
 
Last edited:
Tripnologist pretty much hits the nail on the head. I'm currently developing a CMS for a client, but keeping in mind that I could use it for other sites. I'm enjoying it; despite wanting to rip my hair out at times. But with the results and what I'm learning, it's worth it.
 
Seems a simple CMS will not be as daunting as once thought at least if its targetted at this individual website.

I really have no clue about this but will obviously delve into it. What sort of development time am I looking at here? Should I look to develop the basic functionality of the CMS so I can create the website through it, adding features as I need them?
 
In that case, why not just built yourself a very simple CMS? Even if you could get away with using an existing CMS, I would be willing to bet that you'd score extra points for having built your own CMS. A very basic CMS, while not exactly easy to build, isn't overly difficult and shouldn't take too long.

Building a CMS can actually be a good thing as it'll give you the chance to learn a fair bit.
For example...
- If your site has a Google Map, have the ability in your CMS to edit the map and add markers.
- Add in a form manager so that existing forms can be edited and added to.
- If you have a bunch of images, add in a basic image editor.


--------------------------------

So, true story, we were using an off the shelf CMS but a client wanted a very very basic custom CMS so we built one for him.

The CMS we built was VERY basic and only designed with one site in mind but we liked the freedom it afforded us so one year later, it had around 100 sites on it. Anytime we needed or wanted to do something that the CMS couldn't do, we built it in. Two years later we had v2 which had A LOT of additional functionality and a front end which was a bit easier to use. v2 also had over 250 websites running on it.

Fast forward to today and after 3 hair-pulling months of working 120+ hours/week, v3 is 95% complete and we're very proud of it. It's been completely redesigned with the end user in mind so it's VERY easy to use. On top of that, through the use of user accounts and advanced settings options, we've managed to do it without hurting any of the hardcore developer features. Also, due to a large amount of jquery and ajax, it's VERY VERY fast.

How far have we come? Well, we work with a fairly well known and award winning digital agency and they have had the big corporate CMS players come and give them in house demos of their respective CMS's and after all was said and done, they said that without a doubt, ours was not only faster and easier to use but, is far more powerful in what it allows you to do. It also looks a lot better and thanks to CSS3, is also very easy to reskin.

Sorry to ramble on like that, I guess my point is, start with a simple CMS and see where it takes you. You could end up with something special.

is there a preview of the features of this somewhere? i'm interested to see what you have done :)
 
is there a preview of the features of this somewhere? i'm interested to see what you have done :)

I quite enjoy the anonymity that OCUK affords so I'd rather not mention what company I work for or anything like that. (Plus I'm sure my boss/businesspartner wouldn't be too pleased that I often help people out on here when I should be working).

However, I could put up a bunch of screenshots detailing some of the more cool functionality we've built into it if you'd like?
A fair bit of time was spent with us all sat around a desk just brainstorming and sketching on sheets of A2 before I even started to wireframe it all together.

Also, when I said it was 95% done, that was a bit of a stretch. We included v3 in a big proposal for a college (website, extranet and mobile site) and won in part because of it so we're currently 95% of the way on having just the advanced functionality they require. It'll take us a few more months afterwards to get it all the way there.
 
Last edited:
When I grow up, I want to be Tripnologist (he's says aged 23).

I've just started working with codeIgniter and i'm going to build a CMS-ish site. TBH it all seems a bit much atm... the idea of building a WYSIWYG editor seems huuuge. :P let alone organising it all, i can't decide what the best DB method for storing all my data post ect etc is.

Compfusing...
 
Last edited:
I quite enjoy the anonymity that OCUK affords so I'd rather not mention what company I work for or anything like that. (Plus I'm sure my boss/businesspartner wouldn't be too pleased that I often help people out on here when I should be working).

However, I could put up a bunch of screenshots detailing some of the more cool functionality we've built into it if you'd like?
A fair bit of time was spent with us all sat around a desk just brainstorming and sketching on sheets of A2 before I even started to wireframe it all together.

Also, when I said it was 95% done, that was a bit of a stretch. We included v3 in a big proposal for a college (website, extranet and mobile site) and won in part because of it so we're currently 95% of the way on having just the advanced functionality they require. It'll take us a few more months afterwards to get it all the way there.

yes please.

I am currently using the N2 framework to build a website- its pretty immense.
 
Building a basic CMS shouldn't be a problem for a final year comp sci student. I managed to build a basic CMS in under a week with very little php background (all programming i've taught myself). It's job was to maintain a basic website and the entire contents of an iPhone app, report user activity, change app settings etc.

Just dive into it and you will be surprised how far you manage to get :)
 
You could use a framework like CodeIgnitor.

I think it might be a little difficult to start off with making your own CMS, if you have never done any PHP before but once you understand the drift of it it will be easier. Personally what I would be worried about is security, you would your PHP CMS to be fairly secure, so people can't hack it easily.
 
http://net.tutsplus.com/tutorials/php/codeigniter-from-scratch-shopping-cart/

I linked you to tutorial 12 because it shows all the links from previous Codeigniter From Scratch tutorials. It assumes a basic understanding of PHP, though even with less than that you might scrape by. Start with day 1. He actually states that the end-goal is to build a CMS. But tbh, once you start to get the hang of CRUD, you get the idea of what a CMS does.
 
Back
Top Bottom