First, let's define what a CMS is. In short, CMS stands for Content Management System. It's a system that lets you manage…content. Fancy, I know. Broken down further, a CMS is a piece of software that allows you to swiftly publish and edit content on your website without the need to touch the site's code.
Typically a CMS is used on sites that need content updated frequently like blogs, news sites, or e-commerce stores. Although, it's not unusual to have a CMS behind something more simple like a marketing site. This allows you to keep homepage content fresh and is especially useful if you want to add new pages as product features are rolled out. A CMS is also great if you plan to couple your site with a blog. But if you're not planning on updating content with any sort of regularity, a CMS may be more functionality than you need.
Since a CMS limits the amount of code knowledge one needs to update a website, a CMS is perfect if you're not adept at writing code. It's also great if you don't want to tinker with the code every time an update is needed. A skilled developer can set up reusable page templates such that you and your team can easily publish new content without ever writing code.
It's important to talk about templates a bit because with a CMS, you do lose control versus a completely custom site. Even though you'll be able to add new pages through the templates a developer sets up, it places a limit on the amount of flexibility and customization you'll have. Down the road, if your content doesn't fit one of the pre-made templates, then you have three options:
- Shoehorn new content into the existing templates
- Cobble a new template together by digging into the code
- Hire a developer to code out a new template
Also essential to keep in mind is that implementing a CMS takes time beyond the effort to develop your actual site. And that time translates into money. Bear this in mind as you weigh your options. If you don't plan on updating your site's content regularly, it might be more cost-effective to contract a developer to make those small, infrequent updates.
In the end, when you should use a CMS depends on a variety of factors but I believe it boils down to this: if you or your team don't have coding knowledge and you need to update content frequently, then you should absolutely use a CMS. The cost of implementing a CMS is far outweighed by your ability to publish and update content as freely as you want.
Now, the topic of which CMS to use? That's a topic for another post.
Make Some Noise