Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

When should I use a Content Management System, and when should I use a web-framework?

share|improve this question
add comment

4 Answers

up vote 11 down vote accepted

Content Management Solutions (CMS) are platforms you can install on your web server that allow you to choose or create a theme and begin adding content to your website. CMS solutions are great for blogs, news sites, and basic corporate or informational websites where the intent is to have pages with mostly text, links and images on them. For example Wordpress and Drupal are CMS platforms (Wordpress started off as a Blog platforms and has evolved into a CMS). Also, some CMS solutions are more advanced and can do advanced websites they tend to be more specific and/or cost money.

In addition to basic text, links and images, most CMS solutions allow for additional plugins that allow Web 2.0 items to be embedded in the content area of a page or in the menu or sidebar. By Web 2.0 I mean more advanced features that create dynamic content, like Google Maps or interactive content. Some of these things can be easily embedded without plugins depending on how easy the content creator has made it to embed. Wordpress for instance has thousands of plugins.

Some plugins are not CMS specific. A good example would be Disqus, which lets you add comments to your website by adding a small amount of code to your html.

A web framework is just a software framework built to work on website code. Frameworks can be in any language. Trying to mesh frameworks from different languages can be a challenge though. Usually, part of the framework code is built to work on the server side and is never seen by the client. Frameworks are small to large size code packages that can be used to build websites more quickly. They can add a vast array of functionality to your site. Some examples are CakePHP, anything installed with NuGet for .Net, or Rails.

Finally, another way to look at it is that most CMS solutions, are web frameworks themselves. They are just on the larger end of the code base scale.

share|improve this answer
    
A couple of points: There are a number of WCM vendors who would dispute the fact that CMS solutions are great for "basic corporate or informational websites" - once you get into the realms of SiteCore, EPiServer, Tridion, etc, you're not looking at a basic website, but these are still CMSs. Secondly: it would be better to say "Most CMS Solutions are built on web frameworks - whether that's ASP.NET, Rails, etc. –  Zhaph - Ben Duguid Nov 3 '11 at 21:41
1  
@Zaph - I agree with you. There are more specialized CMS solutions that do much more than basic business sites. –  RandomBen Nov 4 '11 at 13:33
1  
Thanks for the clarification + explanation. –  A T Nov 7 '11 at 14:15
add comment

You should use a CMS when you want an all ready developed platform to manage contents (for the most) and you've usual (I mean common) and not too specific need.

You should use a framework when you want to build your own, specific purpose, platform. Hence, you need a base to start your web app/website with, without "reinventing the wheel" (so have a built-in email validator, ip validator, filters, and so on).

share|improve this answer
add comment

Firstly CMS and Web Frameworks are not the same thing however CMS is on top of the framework and can form a standard of its own as well as integrate to the framework. The important difference between the two can be in for example Drupal is CMS as CMF that can easily break if you install a badly coded module. Even getting to understand or work with a pre defined naming convention for example theming is a dirty job in cms. Leave it for quick information or marketing based website. You must know one theme and customize it to suit. However WF are more flixible and programmers oriented. Why will learn to hard code drupal api if you can do much cleaner output with the framework. You can define your own functions and you don't have to install a load of rubbish that you don't need.

share|improve this answer
1  
Just so you know, you should award the "best answer" to the actual best answer. This one isn't even readable. –  Kenzo Dec 29 '12 at 7:35
add comment

From my understanding, a CMS is a pre-built system that allows you to quickly add/modify content. It gives the average user enough flexibility to change what your site does by installing modules and themes.

A framework is a system, sort of like a CMS, but grants you even more flexibility with your site as you are to write all of the code yourself.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.