People outside of the digital marketing and web technology industry don’t usually realize that the web as we know it today is a patchwork of numerous & varied platforms and technologies.
One of those technologies is called a “Content Management System” or CMS for short. I wrote this guide to help shed some light on what Content Management Systems are and how they work.
Let’s start with the basics.
What is a Content Management System?
Commonly referred to by the acronym CMS, Content Managements Systems are technology frameworks that allow people & businesses to manage their website’s content, images, and other resources from a single Admin Panel and user interface.
Content – text – is managed from a user interface that is often similar in nature to a Microsoft Word user interface with options to type or copy & paste into a text box area, and use various formatting tools such as bold, italics, the ability to add a hyperlink, and so forth. Often there is an option to switch to a view of the raw HTML code for those who may want to make changes directly to the code.
Images can also be added into the text with formatting options for how text appears next to or around those images.
Separate logins can be created for different users, and some CMS’ allow for different user levels (administrator, author, editor, etc.)
What Does a Content Management System do? Why Use a CMS?
Using a CMS offers some advantages over creating a website from scratch.
The process of coding websites from scratch as typified by a web design business involves a team or teams of designers and developers to make the website vision become a reality.
Designers will create rough layouts called wireframes which are devoid of design elements but serve as blueprints for the home page and interior pages such as a category and product page for an ecommerce site, or article pages for a news site, and so on.
After wireframing, designers will create mockups, often using software such as Photoshop, and after a number of iterations a final design (look, feel, layout) will be selected. Often the hardest part of this step is not so much mocking up the designs, but getting the website stakeholders to agree on a final design – “death by committee” is a real thing, and sometimes it’s better to have less cooks in the kitchen, so to speak.
Developers will then take over and “slice up” these designs and will write from scratch the HTML, CSS, and JavaScript code to make the website come to life. HTML is for content delivery, CSS for formatting and positioning elements such as text and images, and JavaScript for interactive elements such as being able to use checkboxes or other selector elements to change the contents of the page (such as choosing apparel by size and color).
While some of the development phase may enjoy some time savings by using code libraries of various types, developers nevertheless have their work cut out for them to not only create all the HTML, CSS, and JavaScript, but also sync to a database like a MySQL database.
As you can see, this is a lot of time and work. And unless the development process includes creating an at least somewhat user-friendly interface for people to add new web pages and other web content, every time you need a new page, you need a developer to work.
Content Management Systems can shortcut much of this process, and provide a relatively easy to use user interface that makes it easy for non-developers to create and publish new web pages or modify existing pages whenever they desire, without having to bother developers, so publishing to the web is faster and that’s a great advantage that CMS’ offer.
Which brings us to…
How Does a CMS Work?
Setting aside how any particular CMS software itself is created (via programming language), in short summary a CMS works by using web page layout templates which communicate with and pull data from a database to populate a web page with text, images, header and footer navigation, maybe a sidebar element, and so forth.
These various web page layout templates are often comprised of the necessary code such as HTML, CSS, PHP, & JavaScript to complete each templates design and layout. There can be various templates such as on an eCommerce CMS, a template for the home page, a category page, sub-category page(s), and product level pages.
These page templates “call” various elements from the database, such as a MySQL database, dynamically populating the various resources and elements that comprise that type of page whether it’s the home page or some type of interior page such as a product page or article page, along with all the navigation and other “boilerplate” elements that comprise that page type.
Again, this makes it easier for non-developers such as content authors to be able to directly publish new pages and update existing pages, without involving developers, which can save time and money, making using a CMS for a website very attractive since they often work right out of the box, albeit often with some customization being necessary. And depending on your skill set, you may still need heavy developer involvement to design and configure your CMS, or you may be able to do much or all of that yourself.
Also, CMS’ will typically have a “theme” or “skin” which is easily changed, and so unless you require specialized customization, having a new look and feel for your website is as easy as changing your clothes – with a few mouse clicks you can have a totally refreshed design.
Another super-handy aspect of many CMS’ are plugins and extensions which extend the core functionalities of the CMS. A good example here is WordPress which has a thriving community of plugin developers – if the core WordPress install does not have a specific function you desire, chances are there’s already a plugin for that.
All of that adds up to a great deal of flexibility you won’t get if you have your website coded from scratch.
What are examples of Content Management Systems?
There are many CMS’ on the market, some are free, others not.
Some CMS’ specialize such as Magento which is an eCommerce CMS, others are general CMS platforms such as WordPress.
Here’s some CMS examples – but there are many more:
- WordPress
- Joomla
- Drupal
- SilverStripe
- ExpressionEngine
- TextPattern
- Cushy CMS
- Radiant CMS
- Magento
- Blogger
Go to your favorite search engine and type “example of content management systems” and you’ll be inundated with choices.
What are the Downsides to Using a CMS?
CMS’ provide a lot of benefits, but like everything in life and web technology, there are tradeoffs. Each CMS has its own set of limitations and quirks that you will either have to live with, or hire someone to modify for you, or modify on your own if you’re able.
CMS’ will also require a learning curve if you’re not already familiar with that particular CMS’ user interface, setup requirements, and functionality. You and/or your staff will need to set aside time to figure out how to use the CMS for your particular job.
You may also require technical help if you run into issues, if your CMS gets hacked, or if you desire customizations or functionalities you’re not able to handle yourself. For example, if you’re moving your current website to a CMS and you want your site’s look and feel to remain the same, that’s going to require some developer resources to make that happen.
Due to the dynamic nature of how CMS’ works (see the “How Does a CMS Work” section above) by storing elements separately then assembling them on the fly, page load time may not be as fast as you might desire, or your users might desire. You may be able to mitigate this through caching and use of a CDN (content delivery network).
You may find the downsides outweigh the benefits and decide against using a CMS, but many of the downsides have workarounds or existing proven solutions.
Summary & How to Choose a CMS
A content management system can be a great choice for managing a website because it provides a relatively fast and easy way to publish web pages and websites, especially compared with designing and developing a website from scratch.
There are different types of CMS’ out there such as Magento for eCommerce, and WordPress for general purpose sites, so if you’re considering moving your site to a CMS or from one CMS platform to another, I suggest doing some research and talking to several site owners / webmasters and ask them about the pros and cons of the CMS you’re considering.
Ask them what they like about their current CMS, and what they absolutely hate. A good question would be “if you had it to do all over again, would you choose your current CMS or something else?”. Another good question would be about the learning curve they experienced because unless you’re already familiar with a particular CMS, you will need to take time to learn how to use it.
David Portney is a published author, an experienced speaker & trainer, and proudly served on the SEMpdx Board as Charity of Choice and then Sponsorship Chair 2013-2014. David started doing SEO as a hobby in 2008 and became a professional SEO in January 2010 working for a Vancouver, WA company which focused on SEO for small businesses. He then moved to enterprise-level SEO work with Portent, Inc. headquartered in Seattle 2 years later. After 3 years with Portent, David now works as SEO Lead for 3Q Digital based in Silicon Valley. Quote: “Yes, I’m very into SEO but let’s call it passion and not obsession, okay?” Follow David on Twitter @dportney.
Say Hey David, I now be CMS smart 😉
Httml// blog.com
Well written article! Looks a bit like you prefer CMS… We haven’t found the perfect one yet.