tags:

views:

36

answers:

6

I am working on a project which requires facilities like aricles, forums, ratings, polls,communities etc..

how to i proceed to make it?

what are its essential parts?

suggestions for the database design. thankyou.

+1  A: 

I know this isn't your question, but don't reinvent the wheel.

You will fall foul of a lot of problems.

Use something like Drupal instead.

jezmck
A: 

There are so many existing and good and open source (if you need the source) CMS systems already. Why reinvent the wheel?

I would recommend going with one that exists but if you must you could even download an open source CMS to help give you an idea of what you need.

klabranche
+1  A: 

Just take a look at some source code from existing CMSs such as Wordpress or SMF and you'll get a good idea.

adamzwakk
i am currently trying to understand opencms right now on your advice and i hope with some tweaking i can fix it to do exactly what i want. I will post updates as i progress.
Vetional_f
anyways thanks for the idea.
Vetional_f
+1  A: 

Yeah-- roll with wordpress or drupal if php, dotnetnuke or orchard for .net. Bare minimum, you could use their code as a template to make yours.

CMSs are complex systems--don't waste your time

Micah
I agree. It is MUCH easier to integrate an existing CMS than it is to build it from scratch. I've done both and will never attempt to build another one again.
Chris Lively
i want a very basic one can you just give me a idea about how you proceeded?(on both ends middleware and backend)
Vetional_f
A: 

I would suggest that you adopt a php framework, like Symfony, kohana/CodeIgniter CakePHP etc. Building a custom cms for yourself or a client is not a bad idea. Hacking the 'usual suspects' that do 80% of what you need and leave a cluttered backend interface might work for some clients, but if you can offer a truly custom experience, your clients would prefer that, given that security is not an issue and you have well functioning CMS.

When it comes to the rudimentary tasks involved in database management/scaffolding, user permissions, forms handling, etc. do try out one of the frameworks, they get you coding the important stuff sooner. Play around with any one of these (I find Symfony is pretty powerful, and Kohana/CI are easy to set up, haven't used cakePhp) and once you get comfortable with one of these, have a look at some of the CMSes that were done using these frameworks

Daniel
A: 

I've built a couple of lightweight CMS's from scratch several years ago in PHP, when the Nukes were the main ones about, and Mambo was becoming popular, however nowadays there are many great choices to choose from.

If your needs are very simple and you really want to build it yourself, than I would recommend building one with a framework such as Kohana which has much of the core plumbing in place, database access, security, permissions etc.

  • You will need a WYSIWYG such as TinyMCE, (f)CkEditor, or Telerik RadEditor.
  • Database structure could be centered around document type structure, take a look at the db structure for ModX which is an excellent CMS to buid customized sites off, however even looking at how they structure content is useful.
  • Design a backend U.I for the admin area of your site, keep it simple, and separate the cms admin area from the frontend code.
  • Determine the scalability issues of your cms, catering to hundreds(of thousands??!?) of users, what type of roles will be required, permissions for editing content etc.
  • How would the CMS be extended, with plugins, modules
  • Determine the templating system, whether to roll your own or use an existing one such as smarty.

These are just some of the initial decisions to make, it's actually quite easy to build a simple CMS though as others have suggested its generally much better to use an existing open source one, ModX, Drupal, etc..

Stempy