Aug 20, 2012
Table of contents:
WordPress powers over 22% of all new websites and has grown into one of the biggest and most active Open Source projects ever. This has created a huge opportunity for both Clients and Developers.
For Clients, it is an easy choice to go with WordPress if your project is suitable. The WordPress community is so active that anything you want to do with your website is more than likely already been done and there are thousands of websites, blogs and forums offering help and support.
However, WordPress is also seen as a easy way to make money for unqualified of incompetent developers. It is relatively easy to create a WordPress theme fit for a client’s needs, but under the surface, you could be left with a broken and insecure website that is a ticking time bomb of trouble.
Recently, I was asked to have a quick look at an organisation’s WordPress set up. To my horror, it was a mess. The Developer seems to have had very little experience developing WordPress websites. On the surface, the website looked fine, but it was actually riddled with errors, poorly set up and a mine field of plugins and custom hacks. The organisation had been given no direction for using WordPress and so very quickly the website had become unworkable.
Due to the position of trust between a Developer and an inexperienced Client, it is very easy for a incompetent Developer to deliver a broken or poorly made website.
With this in mind, here are some important things to look for when hiring a WordPress Developer and reviewing their work.
One of the best ways of finding good Developers or Agencies is by requesting examples of previous work. Ask for examples of WordPress specific websites and projects that they have worked on.
If possible, try and contact the Client or owner of the website to get a reference. You will want to ensure that the Developer created a website that the Client was completely happy with.
With WordPress, it is possible to make not just a blog, but also a Content Management System or even a full blown Community website. If you are want a highly bespoke WordPress installation and theme, look for a Developer with deep knowledge and experience in creating that exact type of website you are looking for.
Also look for examples of work that are now high trafficked and popular websites. Many of the strains of a poorly developed WordPress website won’t show up until the website is handling an uptick of traffic.
Almost every request you will give a Developer will be able to be handled by an open source plugin. For each plugin that your Developer chooses to use, you should do your own background research to ensure that they are using high quality and secure plugins. One of the biggest problems with WordPress installations is when a poorly made plugin has been used.
Things to look out for in a good plugin
Revision Control is an example of a good plugin. As you can see, it has a high rating, over 100 reviews, it is up to date, it supports the latest WordPress release and there is plenty of support.
If your Developer wants to use plugins that have bad reviews, many cases of end user problems or have not been recently updated, tell them you do not want them to install it on your installation.
One final word about plugins. Don’t go over the top by installing hundreds of plugins. Just because they are available, does not mean it is a good idea to install them. Ideally, you won’t need more than 10. Once you start installing more and more plugins, updating and maintaing them will become a nightmare. Also, if you have trouble in the future, you will have to go through each plugin to find the culprit.
Take a look at my post, 13 essential WordPress plugins for some recommendations on what plugins you should be using.
A WordPress “Child Theme” is a theme that inherits the functionality of an existing “Parent theme”. This means a Developer can quickly create a theme from an existing theme where much of the existing functionality is already in place. This is perfect because a lot of WordPress themes end up working the same, but looking slightly differently.
With all of the functionality already in place, a Developer does not need to cobble together plugins or write their own code to fill the requests of the client.
When deciding on how you want your theme to work, take a look at some of the popular WordPress Parent themes and Frameworks. If you can find something that already exists, you will save yourself a lot of time and money because the Developer can just create a child theme from that existing framework.
Popular frameworks include
If your Developer is using a framework or a parent theme, at least they are starting with a solid foundation.
Custom Post Types are one of WordPress’ most powerful, yet often neglected features.
By default, WordPress allows you to create Posts (i.e. Blog posts), Pages (i.e. static content) and a few other types of content. With Custom Post Types, you can create special pages for products, events, services or any other type of content that requires a bespoke layout and content.
I’ve seen many examples of inexperienced WordPress developers hacking Pages to try and do the job of a Custom Post Types. If you are requiring your Developer to create special content pages, make sure they are using Custom Post Types.
When making changes to a live website, things can go horribly wrong if something breaks and you are left with an exposed broken website to the entire a world. A much better deployment process is to have a development version and a live version. When new updates are released or changes are needed, the work can be done on the development site and then pushed to the live site when everything is working correctly.
Ask your Developer to create a development and a live version of your website and ask them to show you how to make changes on the development version before pushing the changes live to the live version. This will then completely prevent any embarrassing problems affecting your live website.
WordPress can get pretty unruly if you do not keep everything neat and organised. I’ve lost count of the number of times when I’ve logged into other people’s WordPress installations to see WordPress and every installed plugin is out of date.
You should be keeping your WordPress installation up to date whenever a new release comes out. Often there will be critical changes or security fixes in these changes, so neglecting them will leave you vulnerable.
Updating plugins is also critical because you need everything to be working in sync. If you let your plugin updates slip, you might find that at some point in the future things begin to conflict.
It’s also important to keep your database in check.
By default WordPress creates Revisions of posts and pages automatically and whenever they are saved. The table in your database that holds this data can quickly get bloated with hundreds or thousands of Revisions that you don’t need. Use Revision Control to keep this table neat.
Two of the most important aspects of any website are the measures in place for Backup and Security. If you are going to be putting in a lot of time, effort and resources into your website, you deserve it to yourself to make sure it is completely backed up and secure. Hopefully you will never need to use your backups, but in the event that you do, you will be glad you took the precautions.
There are a number of free Backup and Security plugins available that will scan your installation and make backups on your server. However, this is a bit pointless if you server gets hacked or it is burnt to the ground.
Personally I pay for VaultPress which is a premium plugin from the creators of WordPress. I’m putting so much time and effort into Culttt, it is completely worth the money to pay for a premium security and backup plugin. I like VaultPress so much I’m even paying for the Premium version.
Don’t be burned by a hacker or a dodgy hosting company. Take the precautions yourself to make sure you are completely covered should the worse happen. At $40 a month, VaultPress is completely worth it for the time and effort you put into your website.
WordPress provides a very clean separation between the core system files and the theme and content files. Generally you should only ever edit files within a theme.
However, some developers seem to not be able to help themselves when it comes to hacking the core. Hacking the core can have huge consequences when it comes to upgrading WordPress.
For example, imagine the core files have been changed to work in a certain way. But then one day, WordPress release an update that fixes a critical security error. Updating your WordPress installation will over-write the hacks in the core and will completely break your website.
WordPress provides Hooks, Actions and Filters to take advantage of advanced functionality. If you are asking your Developer to create some bespoke functionality, ensure they are not making critical changes to the WordPress core files.
WordPress makes it very easy to set up an entire website through the browser. However, if you come across problems, you are going to need to have a Developer with knowledge of fixing things and finding problems on the Server.
This was one of the problems that I found in the example I mentioned at the start of this post. The Developer had installed WordPress through a “One click” installation found on many hosting provider control panels. When it came to fixing the problem he had caused he was completely out of his depth because the problems could not be fixed through the control panel.
Ask your developer how much experience they have with server set ups, databases and bespoke installations. If they don’t know anything outside of installing through a control panel, they will be useless if you hit problems in the future.
One of the big problems with WordPress performance and scalability is not actually WordPress’ fault at all. It has become very cheap to host a website online these days with hosting starting at just a couple of dollars a month. This is great because it means it is very affordable to get online, however, if you skimp on your hosting, you are very likely to hit problems in the future. Instead of trying to find the cheapest plan, or going with an unknown company, choose a company like WP Engine. WP Engine specialise in WordPress only hosting and therefore are much better equipped to host WordPress websites. WP Engine have a number of exclusive features like Git deployment and a staging area to test plugins and theme updates.
It has become very easy for Agencies or Developers to offer hosting to their clients through Reseller hosting accounts. A Reseller account is where an Agency or Developer buys the right to resell hosting to their clients. This means that all of the websites will be in a shared environment and would be managed by the seller. This is a good way of getting a regular income after the initial work of developing the website has been completed.
However, this type of shared hosting is only going to get you so far. If your website starts to grow, you will quickly realise that you have outgrown this type of hosting. Shared hosting also exposes you to potential security issues that are easily avoided.
When launching your WordPress website, choose a hosting provider like WP Engine. Again, much the same as the Backup and Security considerations, you owe yourself the investment in a quality hosting provider to ensure your website is safe, reliable and making the most of your time, resources and investment.
Before you sign off your Developer’s work, get a second opinion or an experienced and trusted Developer to have a quick look over the work. Often development work is not necessarily bad, but rather it could be just done in a better way. Other times, the work is just terrible and you will be preventing a lot of future headaches if you catch these problems at the start.
WordPress is a beautiful thing because it has completely democratised and lowered the barrier to entry for creating really functional and powerful websites. However, this has also opened the door to Developers looking to earn a quick buck with shoddy work.
With the right vetting and taking the proper precautions, you can prevent yourself from ending up with an unworkable mess of a website.
Don’t worry if you are not experienced or you are not a technical minded person. The WordPress community is huge and there is plenty of help, support and extremely skilled Developers who are ready to create the website of your dreams.