The WordPress CMS debate: Advantages and DisadvantagesThe WordPress CMS debate: Advantages and Disadvantages

The WordPress CMS debate: Advantages and Disadvantages

Written by Former Staff on 9th Mar 2015

The technical developers at Axonn work with a number of content management systems on a weekly basis. Therefore there is often heated debate and discussion on which is the best and where there seems to be the most disagreement is when dealing with WordPress. So we’ve decided to get serious and have a battle and share the findings with you. Start the 8 mile music…

In the ring: Billy Maddocks, head of client technical solutions, and Danny List, lead web developer.

Opening Statement

Billy: I’d like to start with a little character defamation, to help you to know who to trust. I’ve been working with WordPress on and off for the last four years and maybe when Danny has the same level of experience as me he will come around to my opinion. Either way he should really just listen to his boss and not argue!

I think WordPress has its uses particularly for people who have a basic understanding of web development and just want a place to put their thoughts and opinions and get a website built quickly. But in terms of a robust website CMS solution for a business I find that the popularity of WordPress is disproportionate considering the numerous other viable CMS solutions available. It has issues with security, is inflexible when it comes to creating content websites that are slightly outside the box and the lack of ability to create custom, totally independent components is frustrating. Not to mention the lack of role and user management facilities.

Danny: To give you a quick insight into my background; I have been working with web development in various forms since my early teens. At the risk of coming off defensive in an opening statement I’d just like to point out that Billy seems to have underestimated my experience and the fact that mine outweighs his when it comes to WordPress, but as he’s my boss I’ll just do what I do best – let him think he’s right.

I like to think of WordPress as a completely mouldable CMS – while I agree with Billy’s point that it is an excellent starting point for people who have a basic understanding when it comes to website development, I believe it is also an excellent system that experienced web developers can build upon with ease. A lot of content management systems attempt to cram too many features and functionality into the core when not every user wishes to utilise them and this results in wasted resources. WordPress solves this problem by providing the user with a relatively simple and effective functioning website that you can then build upon if you wish.
It has a similar advantage to popular development frameworks; massively reducing the time it takes to get a system up and running so you can spend more time with the more impressive features.

Plugins

Danny: Plugins have got to be one of the biggest selling points for WordPress. They are incredibly simple to source and install and they provide you with the ability to modify your site to suit your needs. At the time of writing this there are currently 24,154 listed in the plugin directory alone and the vast majority are completely free.

The most difficult aspect of dealing with plugins is trying not to go “plugin-crazy”. We have all been guilty of this – a voice inside takes over and you end up installing everything you come across mainly because you can, similar to when you got your first smartphone and installed 643 games in under six minutes. As there are such vast quantities of plugins available this does result in some that aren’t as efficient or greatly executed as they should be, so be selective and make sure you do your research.

Billy: A lot of people seem to see the plugins as a big selling point for WordPress, but I would be hesitant. As Danny says there are 24,154 listed plugins, but how many of these can be trusted? From my experience of WordPress websites, there are only a limited number that are used successfully on a regular basis, most of which are essentially papering over cracks left by the WordPress code or lack thereof.

An example of this would be one of the SEO plugins. Everyone knows any website, particularly the market WordPress is aimed at, needs to be well opimised for search. Yet a plugin needs to be installed to achieve this effectively. Even then the best SEO plugins out there restrict some of the functionality that is then available on the website, without more hacks.

This is before I get onto the need to only have plugins which are upgraded as regularly as WordPress is in order to avoid compatibility issues. This is discussed further in my winning “Performance and Maintenance” argument.

Security

Billy: The most talked about issue with WordPress is security. WordPress is so popular and the endless supply of themes and plugins is a constant source of vulnerable code. The best example of this is probably the image scaling script (timthumb) that was installed on millions of WordPress sites through themes and made them open for automated hacking tools.

Professional publishers with a multi author and editor setup often find that WordPress lacks basic user and role management capabilities. It is possible to extend WordPress through multi-author and role management plugins, but it is not always as good as using a CMS with these functions included in the core.

Danny: I have to say I think you are clutching at straws here Billy. TimThumb was a very popular piece of code that could be utilised on many other content management systems without restriction, so I really don’t see how this is applicable to a WordPress debate.

When it comes to users and role management, this goes back to my point about extending WordPress to suit your needs. For many, the current user privileges that WordPress provides are sufficient. If not, then as you mentioned there are numerous plugins available that will do this.

As far as the security of the admin panel is concerned, I believe responsibility should fall onto the user as much as WordPress. There is password hashing as part of the core package, but as with any login that you create you should exercise caution and ensure you are using an array of different characters.

Community

Danny: I am really interested to hear what negative comments Billy can provide regarding the WordPress community. There really is no arguing that the amount of resources and general help available is overwhelming, especially compared to other popular content management systems.

I am not sure why, or if it’s just my experiences in general, but WordPress developers on a whole just seem more inclined to help. A factor in this could be that the main WordPress.org site is very community focused and almost personable. Couple this with the fact that they keep their technologies very transparent and I believe you have a clear recipe for a successful community driven product.

Billy: I resent the implication Danny makes that I am somehow blinded to the positives WordPress does have. I agree the WordPress community is one of, if not, the most friendly and helpful techie communities around, not that that’s a hard title to take.

The problem is that without this community WordPress would be impossible to effectively code with. There are still, after years of iterations, a number of idiosyncrasies and bugs that everyone needs to be aware of in order to make an effective site. The most obvious of these being the lack of IDs to check if a post is duplicated when inserting into the database, but instead relying on the headline.
With that moan out of the way, I would say the main factor that has contributed to WordPress’ success is the community it has been able to create. But whether that’s what makes for a good website is a different question.

Performance and Maintenance

Billy: As admirable as it might be that WordPress updates its version regularly, that causes its own issues. Many of the plugins available do not get updated quite as regularly, which can lead to compatibility issues and therefore sections not working correctly. If the plugin is for SEO or something equally important this can have huge ramifications for your website.
In terms of performance, WordPress does not scale well. So if you business grows and so does your number of pages and database rows you could run into problems later down the line.

Danny: I have to agree with you slightly on this point. There are an array of plugins out there that have been left to wither and die, but I believe the issue with compatibility is completely down to the end user. When installing a plugin through WordPress it will explicably tell you if it has not been tested with your current installed version so to proceed with caution.

Regarding scalability, many attack WordPress for the simple fact that it dynamically generates the pages from the database which, if your site suddenly receives a massive spike in traffic, could slow or even bring your site down. This issue is prevalent on all sites with a similar setup, and preventing these situations is something all web developers should be attempting to do i.e. by installing a caching mechanism or setting up load balancing. For those expecting a dramatically high rate of traffic, both Amazon Web Services and Rackspace have guides on setting up a highly scalable WordPress installation.

The proof, however, is always in the pudding. A quick glance at the list of WordPress users shows a phenomenal amount of high-traffic sites including TechCrunch, NBC Sports, CNN, DowJones and UPS. Surely if WordPress wasn’t scalable then these sites would use alternative infrastructures.

Design

Danny: I’d like to discuss the design aspect from multiple angles starting with the advantages for non-developers. WordPress comes with two themes installed by default that are ready to go. If none suit their needs then there are a plethora of themes available for free directly through the admin panel. Users can search for themes based upon their requirements, i.e. the number of columns or colour, or simply check out the newest or most popular. A large amount of these themes, especially those from well known WordPress development companies, come with a control panel that allows customisation of the overall style and layout. This helps alleviate the problem of the thousands of people who are using the same theme having identical websites.

When it comes to developers, there are numerous routes that you can go down to create a customised site, and I am sure the developers who are reading this article will demonstrate their own theming idiosyncrasies.

The avenue I take is downloading a completely blank theme (HTML5 orientated of course) and then adding the necessary designs and elements that I require. This takes the monotonous task of creating all of the required WordPress PHP files away and work on the coding itself can begin almost instantaneously.

A second option involves developing child themes of a currently existing theme. This is not necessarily the best solution for a custom website but if you have a client who has an existing theme yet wants some out of the box advanced features then this may be the route to take. It works in a similar way to extending classes in an object-orientated programming language.

When you take a step back and look at the way that WordPress has implemented themes, I think it’s a perfect balance of complexity and power. If you compare the methods to those needed to theme a Joomla or Magento site I think it’s clear to say that WordPress is dramatically simpler yet it’s still as powerful.

Billy: It’s tough to know where to start with some of the statements Danny made here. But the most obvious for me is:
“If you compare the methods to those needed to theme a Joomla or Magento site I think it’s clear to say that WordPress is dramatically simpler yet it’s still as powerful”

OK so maybe the themes are slightly simpler but as powerful? Definitely not. Let’s take Magento for example: the flexibility allowed on an individual category or product level to drop in predesigned blocks from other pages cannot be matched by WordPress. OK, you can hack some PHP code together, which aids the widget functionality in order to accomplish this but that’s not powerful, you might as well build your site in standalone PHP.

The number of themes available through WordPress is certainly a positive, which is mostly down the the large community that exists. But do you really want to have your awesome site and products look like everyone elses? Probably not, but I’m sure at this point Danny would say well you can modify the theme once you have it and he’s right. It all comes down to the time and money against how tailored you want you site to be.

All one-sided and over the top opinions aside, we certainly would never put someone off from using WordPress. Our website is built using it (by Danny) and we integrate our content with it after all.

Not only does it provide a time effective and powerful solution, but the user interface is simple enough to allow you to get train future users of the system quickly.

With any new website build, the decision should not be taken lightly and you need to weigh up whether the functionality requirements of your site will be met with minimal potential issues regardless of the CMS.

The equation that should power your decisions is cost and time versus functionality, but bear in mind that there will never be the perfect solution unless you build a bespoke system.

So who do you agree with?

Read More