What is a Content Management System and how can it benefit me over a tradition website? How easy is it to create and manage one?
A Content Management System (CMS) is an organized and effective system for running an interactive website. It has many key advantages over alternative website deployment methods including access control to content, content scheduling, functional extensibility through addition of components and customized enhancements, but perhaps most critically is the separation of content from presentation.
In traditional website design, the website is run from a web authoring tool such as Macromedia Dreamweaver or Adobe Golive. These applications provide a visual tool for designing pages and also manage all the aspects of your site including stylesheets, images, site colors, web pages, folder structure, and links. Without the aid of these systems, maintaining a large website would become nearly impossible as changes take place.
Using a CMS requires a different approach. Instead of using a desktop application such as Dreamweaver, almost all your interaction with your website takes place in a web browser such as Firefox. All your content is maintained within a database making it easy to find and edit at any given time.
In a traditional website once you have built your website within Dreamweaver on your desktop computer, you will use the built-in FTP functions to upload the files to your website. When a visitor comes to your site and request a page, a web server, such as Apache, will send the HTML and images to their browser.
A CMS works in a different manner. First you must install the CMS on your server. The web server must not only have an Apache web server, it must also be running a MySQL database server, and have PHP installed. In some cases you can use other web servers instead of Apache as well as other databases than MySQL, but in general these three tools work together as a platform known as AMP. Once you have verified your web server provides AMP, you can install your CMS. This may require the help of your ISP or an IT professional. The CMS can be loaded using FTP along with the popular MySQL management tool phpMyAdmin. phpMyAdmin allows you to create a database for your website and load the SQL code for your CMS.
When your visitors come to your CMS website they will request a page from Apache which will talk to PHP to retrieve the page. PHP will request the page elements from the MySQL database and take the results to construct an HTML page that can be presented to your browser. This page does not physically exist on the server, but is created dynamically on demand by AMP. There are abundant benefits from this approach. The information can change automatically based on who the visitors is, when they are arriving, where they are coming from and other triggers.
Once you have installed your CMS you will want to customize it to your needs. One of the first areas you will want to focus on are your templates. Templates are the presentation of your website. A template will include your graphics, menu placement, colors, and CSS style guides that will be used throughout the website. Some CMS systems such as Mambo allow you to have more than one template active on your website. You can change the template based on any trigger such as time of year, attributes of the particular visitor coming to the site, you can brand certain sections of your site differently, or you may simply want to have subtle adjustments to your default site template for use in particular subtopics of your website.
You have now completed the presentation of your website and its now time to move on to the content structure. You want to plan out the major sections of your site and all the subsections involved. It is important to spend a great deal of thought on your strategy. The more effective you are at making an intelligent structure for where you will keep track of your site content, the easier it is to maintain as your site grows. Using the back end functions of your CMS you will create sections and subsections for your content. You can follow this up by enabling add ons to your core CMS functionality. Such add ons include ecommerce, calendaring, discussion boards, contact forms, link managers, and many many more.
Now that you have built your presentation and your site's back end structure, you have one last important task in connection your content to the presentation. This is done by linking content to menus in your presentation. Menu items can link to individual content pages, entire content sections, or to CMS add ons such as a site discussion board. You may also add features that display information from within a major site add on such as displaying the latest five posts to the discussion board on the main pages of the website to interest visitors in exploring further within your site's features.
As you have seen, initial construction of a CMS is more complicated than building a traditional website. However, the benefits come not only from the dynamic features you have in a CMS, but also from the fact that all future updates to the website are extremely simple. Building a new page can be done by anyone who you assign the rights to publish new pages within the CMS and can be done simply using a web browser instead of learning complicated software. This makes it easy and reliable to have a large number of people involved in maintaining the website. You can control not only what your visitors see of the site, but also what your site administrators are allowed to work on. If you have done careful planning of your site's structure, no matter how large your site grows it will never become too large to easily maintain. This is markedly in contrast to using Dreamweaver to build and maintain a large website. If you have a desire to change the look of the site, it is simply a matter of building a new template and deploying it to the existing site. This takes a mere fraction of the time it would take to do a serious redesign of a Dreamweaver website.
One of the most attractive features developing recently with CMS websites is interaction with other business applications. You can tie your CMS site directly to an email marketing mailing list system, customer help systems, and to sales automation tools such as SugarCRM. As we move forward we can anticipate every tighter integration of your CMS website with all your business software and information.