So in my search for a great small-business website creation tool I had tried Drupal, and then tried a whole host of .NET content management systems. None of these allowed me the freedom to easily create a small business website. However during this process I had learned something very important: my original goals were incomplete. They were too focused on functional requirements, without any consideration for non-functional requirements.
The new non-functional requirements I had discovered were:
- Open source: or at the very least a product with no content amount restrictions.
- Great support: When something isn’t working and I need help it should be quick and easy to find.
- Flexible and extensible: my needs for the website are frequently changing, so the selected website creation tool should have enough extensions that this is easy to do.
So once again I started searching for a great content management system, but this time I tried searching with Google Trends.
Using Google trends to find a small-business website creation tool
My first search was still on .NET content management systems (CMS):
Which was very interesting: DotNetNuke’s popularity is clearly waning, while Umbraco’s popularity was increasing. This was more reason not to use DotNetNuke, and I had already ruled out Umbraco for other reasons. Then I compared basically all of the major .NET CMS website creation tools against the popular open-source PHP-based website creation tool WordPress:
WOW! WordPress makes the .NET CMS tools look like they’re flat-lining at zero! Additionally, WordPress just keeps getting more popular! And unlike Umbraco, the core WordPress community seems to really think really hard before they add features to the core.
So now I was curious; how did WordPress as a small-business website creation tool compare to other open-source PHP based CMS tools?
It seems clear that WordPress rules the open-source content management world, and just dominates any kind of .NET CMS tool. Interestingly, WordPress overtook Joomla around 2009-2010, around when WordPress 3.0 introduced custom-post-types, allowing content authors to create their own content types (much like Drupal’s CCK). This is an incredibly important feature I’ll blog about soon because with the right plug-ins custom post types allow WordPress to separate content from presentation.
So the masses of internet denizens obviously really like using WordPress. These graphs also mean that WordPress will almost certainly meet my functional and non-functional requirements.
First, let’s examine my newly discovered non-functional requirements for a website creation tool:
- Open source
Obviously WordPress is open-source and free and I can store as much content as I want. It runs on MySQL (or Maria DB – more on that later) which should be able to easily handle the amount of content I could ever hope to generate.
- Great support
As the graphs above demonstrate, WordPress clearly dominates the Google search results, so it should be easy to find help. In using WordPress for the last few months any time I have had a problem or issue with WordPress somebody else has already solved it and written about it on the internet. This means that I can solve most website problems within 10 minutes. Amazing. This was just not the case with the .NET CMS tools.
- Flexible and extensible
I have found that WordPress has thousands of plug-ins that can do anything you need. I have yet to search for some extensible behaviour and not find ten plug-ins offering the required functionality. So far this has meant I can easily customize my websites in any way I want. And the plug-ins are almost always free.
With the .NET tools if it didn’t come with the CMS it was unlikely to exist. The one exception was DotNetNuke, where most plug-ins were expensive, and/or seemed to be very poor quality (probably why its Google Trends graph has been decreasing for so long).
Here is my original list of functional requirements for a website creation tool:
- Quickly and easily choose a skin/theme so the site looks good
- Easily edit my content!
- Host video tutorials
- Provide a help forum
- Provide social-sharing buttons
- Provide an easy way to download my application, perhaps after the visitor provides an e-mail address
- Have good Search Engine Optimication (SEO) to help people find my website
- Possibly provide a way to offer an e-mail newsletter
- Have a Contact-us form (pretty basic stuff)
- Provide version-control for my content, for when I mess something up
- Provide the ability to easily use tabbed content, etc.
- Integrate with CloudFlare
- And of course, provide a level of website security so my business website isn’t hacked!
With the right set of plug-ins WordPress satisfies all of these requirements, and proves that it is a great website creation tool. Of course, it has taken me several months of searching, comparing and trying different plug-ins, but I now have a wonderful set of plug-ins that allow me to easily craft web pages, separate content from presentation, implement security, etc. I’m going to write about the plug-ins I found, but the next post will be a quick introduction to WordPress compared to some of the other CMS tools I’ve used.
Finally, while WordPress is the most amazing CMS system I’ve used (short of big enterprise solutions) it’s still not perfect, so I’m also going to write about the shortcomings that I still haven’t solved yet.
Over the last two months I have had more success with WordPress than I have had with any other website creation tool in the last two years. I created a photography website for my sister-in law in an afternoon. I created a very secure small business website in a week – and most of that time was researching and writing content. I’m now working on another small business website with a completely different look and things are going very well.
WordPress is a powerful, easy-to-use and easy-to-extend website creation tool and content management system, and I couldn’t be happier that my search for a good website building tool has ended.