WordPress was launched in 2003 as a CMS oriented for blogs. This was the common opinion during its first years: if you want to build a blog the best way to go was WordPress, partly because the templates available at the time were formatted to suit blogging.
However once people realised that the problem wasn’t WordPress, but the templates available, designers started to develop better templates and WordPress started to rise in popularity. By 2009 it surpassed its biggest competitor at that time, Joomla, and since then it has been the indisputable KING of CMS.
WordPress has overtaken its competition
But how did WordPress get there? They surely did something right to get from nothing to the absolute top where they are today.
1. Ease of installation
WordPress is easy to install: Just download the files from https://wordpress.org, put them on your server and run the front page in your server. It will ask you for a few details about the database with login details and voila: You have your website installed. Also some hosting providers have a WordPress installer that does everything for you, it couldn’t be easier.
You want your website to be pink with flowers, or a blue menu with dark grey as background? You can easily do this, WordPress has a huge repository of free themes https://wordpress.org/themes/ and there are also websites where you can buy professional themes like Theme Forest. Once you have selected your theme, install it and then activate it on the WordPress backend. Most of the themes provide you with a wide variety of configuration options, so making a template look the way you want will be easier.
This is one of the biggest advantages of WordPress compared to their competitors. There are more than 37.000 free plugins at the moment on the official WordPress page, https://wordpress.org/plugins/ and you also have hundreds of companies that provide you with professional paid plugins adding more functionality to your website.
But what is a WordPress plugin?
A WordPress plugin is a piece of code that is created to add extra functionality to your basic website. Do you need to show a list of Events to your users or maybe a list of Jobs? All this can be done with WordPress plugins, you just need to know what you are searching for, and once you have found the plugin you can install it on your WordPress backend.
WordPress has several plugins that allow you to fully control your SEO from the backend, which will reduce the time you spend on SEO thus reducing the time spent vs. the increase in traffic.
5. User friendly backend
If you have ever worked with another CMS like Typo3 or Joomla you would know that their backends are not what someone will call user-friendly. The backend navigation is very complicated and lacks organisation/consistency. WordPress solves that with a left menu where you have everything. Your posts, pages, custom post types (Events, Jobs, Products, etc.), appearance (Themes), Plugins, Settings, etc. will appear on the left menu.
6. Small footprint
When you look at common WordPress installations you have three types of folders:
Then all the theme related files are in /wp-content/themes, all the plugins are in /wp-content/plugins and all the user uploads are in /wp-content/uploads. The database includes 11 tables, and most of the plugins that you install work with the default WordPress tables.
If you compare this with other CMS such as Typo3 where you start with a bigger installation and more tables in your database, it will increase exponentially due to an exhaustive logging process that logs every small action in your CMS.
However not everything is good in WordPress, as with everything in this world there is a downside, and here are the bad things about WordPress.
1. Database structure
We said earlier on that it has a really small footprint but this sometimes might be a problem. One of the biggest problems is the wp_post and wp_postmeta tables. If you want to create a custom type of post, let’s say “Jobs”, you will fill in basic information in the wp_post table with the type of post set as “job” and then all the custom fields are added as new rows in wp_postmeta.
The problem comes when you have 10.000 custom post entries and this custom type has 20 custom fields. To get all the info about all your entries, you will have to get information from 210.000 rows. Obviously in the real world it doesn’t quite work like that. But if you compare this structure with a custom table where all the information about a custom type is in just one row, you can see where the WordPress structure is not as easy as it could be. There will be a point when your website grows that you will need to start thinking about scaling up, cache, better servers, etc. This point might come earlier if you are using WordPress.
See example below for custom “jobs” posts in a custom database and a WordPress table:
This is a good and bad thing: The downside of having tons of plugins is that every developer has his/her own developing techniques and a plugin might have a hidden flaw or a bug. Since there are tons of plugins, you have to be careful with what you install and fully test them.
3. Price of power
Being the most popular CMS, WordPress is prone to attacks. Sometimes the attacks will be unsuccessful, but sometimes they will be harmful. If you want monitor attacks, I would recommend that you install a “login attempts” plugin and monitor how many login attempts you get. There are robots that will try to login as admin, there are spammer bots that will send spam comments, etc. Of course there are plugins to tackle these problems, but they won’t disappear as this is the price you have to pay for using the most popular CMS.
Is WordPress worth it?
Yes WordPress is still worth it, it doesn’t matter if you are a developer or just someone who needs a website: WordPress can do the work if you understand that WordPress has its limits, so here is a list of when WordPress is worth it:
- You need a small website with a few pages and blog functionality.
- You need a website where you are able to change its content frequently.
- You need a medium sized website with custom functionality that you can get with existing plugins
- You need a middle sized Ecommerce shop, WooCommerce does a really good job on integrating a shop in WordPress
- You are a Recruitment Agency that needs a medium sized website with “Jobs” Integration; WP Job Manager integrates jobs on your WordPress site.
And this is when I wouldn’t recommend using WordPress:
- You have a small website which doesn’t change its content over large periods of time.
- You need users to have administrative functionalities but it has to look like the front end, so a back end integrated in the front end
- You need a big Ecommerce shop or need it to integrate it with POS.
- You require too many custom functionalities