By john | Thu, 01/15/2015 - 16:00
One of the biggest keys to having a successful website is somehow utilizing a content management system. A content management system (CMS) is a way of storing the content of a website so that different users with non-expert level web development experience can create, edit, and manage the thousands or millions of little pieces of content that get displayed to the end user when they visit your site. This includes the body copy of the main pages of your site, down to each and every little side block of advertising text or graphics, to what is displayed in the footer, then ultimately, what is displayed to search engines when they crawl your site.
When the internet was born, a web page basically consisted of body copy that also had a piece of text that linked over to another related web page. This linking was the key reason as to why the internet was built in the first place. However, as time went on, the writers of these web pages wanted to display their content in better ways with more formatting that didn’t look so plain.
More and more markup was gradually added to the content to format how it looked beyond just bolding certain areas or making something italic. HTML and all the other markup that has developed since, have all been about describing what the content is on the page and separating it from other content on the page; thus allowing designers a chance to move things around and add colour, so that web pages are actually aesthetically pleasing as much as they are informational.
As we move along even further, our web pages have changed from just single pages of content, into massive living breathing machines of information and marketing collateral, with repositories of data that serve a myriad of users and needs. With these changes, there was a huge need to separate the content parts of these websites away from the design aspects. Such as what the overall site looks like, as well as the functional aspects of all the very technical workings of what happens when you click on certain links or buttons.
Today, you can clearly see as we have moved along in internet time. We have also increased the complexity of what a website does exponentially. We cannot expect every person who wants to manage the varying pieces of content on a website, to have the degree of knowledge it takes to manage all these different components.
So, the need for what we call a Content Management System (CMS) came to the forefront. It started as a way to let writers of a website take control of the day to day adjustment of the copy their site spits out, while letting different developers worry about how the content was displayed on the page, and what happens when you click buttons. However, in today’s world, content management systems involve way more than just the body copy on the pages.
Modern content management systems, like Drupal, let users with different roles and experiences, manage almost every minutiae of an entire website. You can manage what images the site has to work with and where those images will display, as well as the size, dimensions and what alternative text displays when those images are output. You can manage all the different keywords and text that describe your content so that you can categorize your content for easier use, for your end user, and for the search engines to understand what your site is all about. You can also manage where and when things display, along with the results of your user’s interactions, and have them stored as data in your site.
Here are a few more of the myriad of things that a Content Management System like Drupal can help with:
- Managing the workflow of how a piece of content gets from a draft state to a published state with different levels of approvals and editing along the way.
- Managing all the different varying types of content that will be housed in your site, from the basic page of text to a blog post type of content with images, tags and author credits, to an event type of content with times and places associated with it, to just image based slideshow content, or user profile content with names, bios etc.
- Managing all back end website users and their roles within the site, from administrators to editors to customers and end users. We can manage what kind of information we store about them along with managing the actual information they or we input.
- Managing the permission levels of each of the different kinds of roles on the site so you can determine what different kinds of users can see within your website.
- Managing list displays of all different kinds of content and what is displayed in each list. Manage what filters you can let a user apply to a list, or in a search result, or how the search actually searches when it does its searching.
- Managing forms that users can interact with and what information those forms ask for. Also, what it does with the information after a user submits them.
- Managing what happens when certain things happen on your site, ex. what happens when a page isn’t found, or when a user doesn’t have access to a piece of content, or when your server displays error messages or needs to be offline.
- Managing reports of user interactions with your site and logging errors that happen.
- Managing e-commerce products and orders and payments and customers.
This list of what a modern, flexible content management system like Drupal allows it’s users to manage, is really endless. Hopefully you can see why we think it is a very important key to building a successful website. It is the foundation of what everything else is going to hinge upon when your website begins to be developed.
As primarily Drupal developers, we absolutely love what Drupal can do for us in terms of setting up a new site. This platform is super solid in its architecture and scalability, with unparalleled flexibility which gives us a great starting point for almost any kind of website project. From a blog website to a corporate facing site, to an intranet portal to a social networking site, we see Drupal as the perfect content management base to build on.