Nothing irks a non-tech savvy person so much as an "opportunity" to manage his website him- or herself: creating each page individually from a template, copying the file to the FTP server, placing links from other pages manually and what not.
That's what keeps content management systems alive: they make the whole process of building and managing website easy for a non-developer type of person. In this post, you can learn how to choose the right content management for yourself and your website.
What is a content management system?
A content management system is the web software that lets you create a website without knowing any web programming skills, such as HTML, CSS, PHP, MySQL and such. Instead, you can put up a website by simply pasting your post/article from the Notepad and pressing the "Publish" button.
Normally, CMSs have their own structure, such as blogs (blogging software), forums (forum software) and general content management systems, such as Joomla, etc. However, there are other systems that let you create your own site structure and layout, such as Drupal.
Before we go into picking the system, you need to define what you need before doing anything.
Define what you need
Before you even start searching for a content management system, you need to know why you are creating a website.
- Is it for your business?
- For your hobby?
- Do you want to sell any digital or tangible stuff?
Also, you'll need to know what all you and your visitors want to do on the website.
- Do you want to just publish articles?
- Do you want to have a blog?
- Do you want a forum?
- Any classifieds section?
- An online shop, maybe?
- Do you want to build and inform a mailing list?
- Do you want others to do anything on your site?
Obviously, each of the choices will place several requirements for a CMS, such as an e-commerce (online store) module, a blog, a forum, other customization stuff and more extensions, such as mailing lists and user permissions.
So, before you even start to seek a CMS, create a list of what all you and your want to do on your website. Use your imagination. How would you and your people really like to communicate and share things on a website.
Once you have identified what you want to do, you'll need to translate the wishes to specific system features, such as basic content publishing, a blog, a forum or a shop module with additional plug-ins (many systems allow anyone contribute a plugin or a module to enhance the platform).
After you have a list of features/wishes in front of you, you can start shopping.
Know where to look
The most obvious stop to look for a CMS is cmsmatrix.org.
Here you can select what you want your CMS to do and hit "Search". The list will have what you'll need, most likely. If you want, you can also select other options from the matrix, but I'd recommend not limiting yourself with something you may not need or are not absolutely determined about.
You can learn more about the CMS by clicking on its name. Bear in mind that the data may be outdated (a quick scan revealed that Drupal is incorrectly listed as not being able to have classifieds, while there is the classified ads module available on the main Drupal website).
The next step would be OpenSourceCMS.com.
Here, you can select the CMS you want (albeit through a not very usable menu) and login as an administrator. As you'll still have to manage the CMS somehow, this should give you a good feel of what the CMS is about and how easy/hard it is to work with.
And another way to learn about various content management systems is to ask around on your favorite forums and search in your favorite search engine for 'how to choose a cms' or 'how to pick a content management system'. I am sure you'll find a lot to absorb there. (You'll find a list of useful articles in the pots below).
What to consider?
Of course, the main criterion when picking a platform for your website is what you and your people will be doing on it: writing articles, talking on a forum, posting ads/job listings, etc. However, another thing to remember include:
- how easy it is for you to use the system
- how easy it is for the people to use the website
- how accessible (to the people) and friendly (to the search engines) it is
- whether it can handle heavy load (through built-in load balancing/management/optimization), if you plan to develop a highly popular website
- if you can easily create other site sections within the system
- whether there's significant documentation on the website
- whether there's a forum on the main website to ask questions
Normally, you'll learn everything you need to know, if you read various CMS comparison posts, such as these:
- Open source or commercial CMS
- What criteria to consider?
- How to choose a CMS?
- 2006 CMS award winners
- Drupal vs Joomla (Drupal forums discussion)
- Drupal vs Joomla (Joomla forums discussion)
- Push Vs. Pull - The Battle for the Best CMS
- They hate Drupal, they love Drupal
- Why I love Drupal
Now that you can estimate what CMS you need (or may have already found the one), I'll tell you why I like Drupal:
- the greatest advantage of Drupal is that you have the power to determine site structure
- also, it is quite very human friendly (thanks to response via suggestions forums and special usability studies)
- moreover, it is quite search engine friendly (URLs are crawlable, the text is automatically and semantically correct formatted)
- you can have literally anything: publish articles, have a blog, a forum, a shop, a classifieds section or anything you want: you can create your own page type and system with the right modules
- there's a great handbook, a forum and lots of contributed modules (may as well apply to a couple of other platforms, though)
- Drupal is very performance-oriented: it works slightly better than Joomla, has a special "Throttle" module to stay through the heavy traffic and is well optimized internally
- you can run multiple websites from one installation (and with one or many databases)
- one can migrate from any other platform: WordPress, phpBB, etc
- all site sections, including a blog and a forum, will be integrated and shown with the same layout
- you can search through all the site with search (which won't work, if you are using a 3d party forum platform)
Of course, there are more advantages of Drupal I missed, as I have only been studying it for a month or two. Overall, I can't imagine a better platform to build a site on (and if I get time, I'll move Improve the Web to it, too).
However, you also need to realize that you need to make sure the system will work for you and that you'll learn to work with it. Otherwise, you'll be in trouble.
So, I found it, what next?
After you find a platform to setup or test, you'll need to read the installation instructions for the system, usually found on a highly visible place on the website and with the installation files. Typically, you'll need to:
- download the copy from the CMS website
- unzip the archive to your local folder
- copy the files to your web server through a FTP program
- create a MySQL database, along with a user (with a name and password) to use the database
- specify the database path, name and the user login and password
- set the CMS settings, structure and layout as an admin
- start publishing
Normally, the whole process takes about half an hour (it is slow to copy that many files at once), but expect to spend more than an hour on your first installation and to read a lot on the website.
When creating your website, you need to remember to:
- plan way ahead
- go step by step
- gives your visitors a way to cooperate/communicate
- less is more (number of pages, plugins, links on a page, etc)
- quality beats quantity
In essence, it all means that you only need to do on your website that you need to do. If you want to blog, do so. But don't start a couple of more sections on the website, then a forum and then another couple of blogs on the same website - let your visitors adapt to the changes and let your site grow steadily.
Though sometimes it is clear what decision to make, it may well be worth reading and reading more articles about picking a platform for yourwebsite to make up your mind completely. Only then you'll be able to create what you want without restricting yourself.
Another moment to remember that if you can't pick a platform, you can always run a test site somewhere (on a test domain or on your local computer with WAMP) and see how it goes. If anything, try another CMS.
In the end, it may be a matter of taste and personal preference. Let it be. Don't worry about not following someone's advice or your opinion being different from others' - you need to make your own decisions.