So, what is a content management system?
A web content management system (WCMS) is content management system (CMS) software, usually implemented as a web application, for creating and managing HTML content. It is used to manage and control a large, dynamic collection of web material (HTML documents and their associated images). A CMS facilitates content creation, content control, editing, and many essential web maintenance functions.
Usually the software provides authoring (and other) tools designed to allow users with little or no knowledge of programming languages or markup languages to create and manage content with relative ease of use.
Most systems use a database to store content, metadata, and/or artifacts that might be needed by the system. Content is frequently, but not universally, stored as XML, to facilitate reuse and enable flexible presentation options.
A presentation layer displays the content to regular website visitors based on a set of templates. The templates are often XSLT files.
Administration is typically done through browser-based interfaces, but some systems require the use of a fat client.
A Content Management System (CMS) differs from website builders like Microsoft FrontPage or Adobe Dreamweaver. A CMS allows non-technical users to make changes to an existing website with little or no training. Web content management systems typically require an experienced coder to set-up and add features, but it is primarily a website maintenance tool for non-technical administrators.
Web content management systems capabilities
A web content management system is a software system used to manage and control a large, dynamic collection of web material (HTML documents and their associated images). A CMS facilitates document control, auditing, editing, and timeline management. A Web CMS provides the following key features:
• Automated templates
Create standard output templates (usually HTML and XML) that can be automatically applied to new and existing content, creating one central place to change that look across a group of content on a site.
• Easily editable content
Once your content is separate from the visual presentation of your site, it usually becomes much easier and quicker to edit and manipulate. Most CMS software include WYSIWYG editing tools allowing non-technical individuals to create and edit content.
• Scalable feature sets
Most CMS have plug-ins or modules that can be easily installed to extend an existing site's functionality.
• Web standards upgrades
Active CMS solutions usually receive regular updates that include new feature sets and keep the system up to current web standards.
• Workflow management
Workflow is the process of creating cycles of sequential and parallel tasks that must be accomplished in the CMS. For example, a content creator submits a story but it's not published on the website until the copy editor cleans it up, and the editor-in-chief approves it.
• Document management
CMS solutions may provide a means of managing the life cycle of a document from initial creation time, through revisions, publication, archive, and document destruction.
• Content virtualization
CMS systems may provide a means of allowing each user to work within a virtual copy of the entire website, document set, and/or code base. This enables changes to multiple interdependent resources to be viewed and/or executed in-context prior to submission.
Types of Web Content Management Systems
Currently there are three major "types" of Web Content Management systems: Offline processing, online processing, and hybrid systems.
These terms describe the deployment pattern for the WCMS in terms of when presentation templates are applied to render pages out of structured content. Seth Gottlieb has used the terms 'Baking', 'Frying' and 'Parbaking' to describe the three alternatives.
• Offline processing
These systems preprocess content, applying templates before publication to generate web pages. All content is pre-processed.. Since preprocessing systems do not require a server to apply the templates at request time, they may also exist purely as design-time tools;
• Online processing
These systems apply templates on-demand. HTML may be generated when a user visits the page, or pulled from a cache. Most Web Application Frameworks perform template processing in this way, however, they do not necessarily incorporate content management features.
• Hybrid Systems
Some systems combine the offline and online approaches. Some systems write out executable code (e.g. JSP pages) rather than just static HTML, so that the CMS itself does not need to be deployed on every webserver. Other hybrids, are capable of operating in either an online or offline mode.