Life as a WordPress and WooCommerce Themer

Rodolfo very kindly asked us to talk to the WooCommerce Dublin meetup in October about Life as a WordPress and WooCommerce Themer. Rodolfo I finally managed to put the slides online – sorry for the delay everyone! If you’re interested in learning more about WooCommerce and your based in or around Dublin you really should try and make it to one of the monthly meetups. The next one is tomorrow night November 11th 2015 and features Ireland’s foremost WooCommerce plugin developer Diego Zanella from

Just to seal the deal for anyone thinking of attending, Realex Payments very kindly sponsor the event and will supply you with plenty of free beer and pizza in addition to learning the secrets to WooCommerce plugin development 🙂

Without further ado, here’s our slides from last month.

How to troubleshoot WordPress problems

It’s easy to forget how amazing WordPress is. The huge ecosystem of themes and plugins allows anybody to get a top class website up and running in not time at all. But what happens when something goes wrong?

Your website is a probably a complex blend of themes, plugins and customizations that you’ve implemented. There’s potentially dozens of people who contribute to your website – either directly or indirectly. It can be incredibly frustrating to navigate the ecosystem when your website is broken. And that frustration can quickly turn into panic when you add eCommerce and lost orders and revenue into the mix.

Today we take a look at how WordPress website owners and WordPress professionals alike can learn to troubleshoot issues when things go wrong in a much more meaningful and constructive way.

Providing world class support is an important part of what we do at CommerceGurus. One of the best ways we can provide support is to try and make our products as bug free and easy to use as possible. Our customer satisfaction ratings and reviews tell us we do a pretty damn good job at this. Our author rating is currently 4.92/5 over on themeforest. While that makes us happy, we continuously strive to do better.

Over time you begin to see the same issues arise time and time again. In fact, the vast majority of recurring issues and bug reports we see from our customers are actually not theme bugs at all.

While the issue may manifest itself as a theme ‘bug’ (e.g. “The Add to Cart button stopped working on my site – please fix it!” or “The Quick View button on my products is showing a javascript error when I click it – the theme is broken!” ), 99/100 times, the theme itself is actually fine and the origin of the issue lies elsewhere.  That becomes immediately apparent with a quick comparison with the main theme demo which will be working just fine – but this doesn’t help the customer resolve their issue.

The art of troubleshooting and debugging WordPress problems is a skill that takes many years to develop. If you’re new to WordPress (and WooCommerce in particular) it can be incredibly frustrating to experience a problem on your website only for a theme developer, a plugin author and/or a hosting company all blame each other for the issue.

Developing the ability to troubleshoot and debug problems with your WordPress website is one of the most important skills you as a WordPress website owner must invest in unless you have delegated this to another WordPress professional that works for you.

Enter The WordPress Troubleshooter

For this reason, we’ve created a simple WordPress Troubleshooter Infographic which we hope will help you develop good troubleshooting habits for your WordPress website when things go wrong. Without further ado, say hello to The WordPress Troubleshooter.

The WordPress Troubleshooter

The WordPress Troubleshooter

Share The WordPress Troubleshooter On Your Site

The WordPress Troubleshooter Explained

If we’ve done our job right a good infographic shouldn’t really need an explanation 🙂 In any event, let’s take a walk through the Troubleshooter and delve a little bit deeper on each topic.

Help my site is broken!

We’re starting with the assumption that something on your website is ‘broken’. The first thing to determine is just how severely broken your website is.

Can you see your site?

If you can’t see your website then things are obviously pretty bad! Determining severity helps to quickly narrow down the most appropriate set of next steps.

The White Screen of Death

This is most common issue we get reported to us when someone can’t see their website. Instead of their website they simply see a blank white screen. You don’t see a 404 or a 500 error or a timeout error – just a plain blank white screen. This is incredibly cryptic and unsettling for those who have never experienced it before. Where the hell did my website go?? Fear not, it happens so often that it has been christened the “White Screen of Death” or WSOD which is a not so subtle reference to the old Microsoft Blue Screen of Death or BSOD which MS operating systems were famous for about 10 years ago. In most cases, a WSOD issue can be quickly diagnosed by switching on WP_DEBUG in your wp-config.php file.

To enable WP_DEBUG

Open wp-config.php.

Look for this:

define('WP_DEBUG', false);

Change it to:

define('WP_DEBUG', true);

With a bit of luck, instead of a blank white screen you should now see an error message. This error message could be anything. But if you take the error message and drop it into Google it should help point you in the right direction to resolving the issue quickly. The most common problems see get WSOD reports about are:

  • Memory exhaustion – this is by far the most common reason. In fact if after adding the debug = true code you still see no error message it’s 99% probable to be memory exhaustion.
  • Broken plugins – some plugins are just coded poorly. As you install more and more plugins on your site the probability of one plugin conflicting with another also increases. Sometimes this manifests itself as a php error which will trigger a WSOD.
  • Custom code breaking the theme – you may have added some custom code to your functions.php file to change something on your website and this triggers a WSOD.

The most common issue, Memory exhaustion, happens quite a lot on cheap, poorly performing shared hosting plans offered by the larger web hosting companies like GoDaddy, Bluehost and Hostgator. Your best bet to resolving the issue on those platforms is to get off them asap. Seriously, you won’t regret it. We recommend Siteground – they’re awesome. If you’re stuck on a poorly configured shared host, you can try bumping up the memory. This is really important if you’re running WooCommerce.

How to increase your WordPress Memory

1.) Open wp-config.php

2.) Add the following line:
define('WP_MEMORY_LIMIT', '96M');

I recommend no less than 96M when running WooCommerce.

Is your site offline?

If you’re not seeing a WSOD you are most likely seeing a timeout – something like this:

Don’t immediately assume this is your web hosts fault. It could be your own internet connection. And chances are good that if you’ve got a decent host that this is the case. A really quick way of checking this is to type your domain name into – this will tell you if the fault lies with your web host, or if the problem is between your computer and your Internet Service Provider (ISP.). Let’s move on to how we deal with less severe but still critical issues like plugin and theme conflicts.

Troubleshooting WordPress Plugin conflicts

Plugin conflicts are the number one source of support requests for us. By far. If someone could wave a magic wand and introduce proper dependency management in WordPress I think a lot of plugin and theme developers would get a lot more sleep and a lot less stress 🙂 Plugin conflicts happen for lots of reasons – in rare cases they’re unavoidable. But in most cases, it’s down to poorly written plugins that break either other plugins and/or theme functions. On the surface this looks like a theme bug. But most of the time it’s not. But as theme authors we inevitably end up having to triage these problems. As a website owner you can get to the true root cause of the issue and the source of ‘blame’ for the issue by learning how to identify a plugin conflict. These are the steps I usually take:

Deactivate all plugins – this usually resolves the problem straight away – but may also remove the functionality where the problem is manifesting itself.

Reactivate/Check cycle – Assuming this ‘fixes’ your website (i.e. returns it to a more basic version of itself that isn’t broken but is missing key functionality), I then take things very slowly and I precisely enable each plugin one at a time, checking the site each time to see when/if the issue re-emerges. It’s important you only reactivate one plugin at a time, otherwise you might miss which plugin triggers the issue. In most cases, the issue will reveal itself at a certain point in the reactivate/check cycle. At that point you will have at least pinpointed which plugin triggers the break.

It may not actually be that specific plugin that is at fault – but it is definitely the plugin that triggers the problem. At that point, depending on the precise nature of the issue you have a few options. If something stops working like a button/link press action, then this is most likely a javascript error caused by a plugin conflict. You can determine this quickly in Chrome/Firefox by activating Dev Tools. WordPress have a nice (but a little out of date) guide investigating js errors specifically for WordPress. Chrome also have a great more up to date guide. Seriously folks, even if you are not a designer or a developer, it’s really worth learning how to use Dev Tools to troubleshoot plugin conflcts – it can save you a lot of running around chasing theme author, plugin developers and web hosts if you come armed with  precise bug reports.

Bug Report – at this point I would usually report the relevant conflict to the plugin author in question. Sometimes this is very clearly the fault of a specific plugin (e.g. a blatant js bug in a specific plugin file). Sometime it’s less obvious – it could look like jQuery is not loaded or is not being recognized – which would be odd seeing as WordPress loads jQuery by default. It could be the case that some other plugin has unloaded the default version of jQuery and replaced it with their own (Plugin authors – PLEASE stop doing this – it’s NOT cool and against WordPress coding standards) which means their plugin works fine but the theme and WordPress itself stops working. In this scenario it’s very difficult to know unless you’re quite technical who exactly is to blame. The best bet is to try different “blends” or permutations of activated plugins – which can help identify which plugin or plugins are truly at fault for your issue. Assuming you can get a good handle on the point of fault, I then construct a bug report which always includes the following:

  • WordPress version
  • Theme version
  • Plugin version
  • WordPress site url
  • WordPress admin user/pass (if requested)
  • Steps to re-create the issue – describe in as much detail as possible the exact steps you take to see the issue. Don’t assume the theme author or plugin developer will know what you’re talking about. Every WordPress website is a unique little snowflake with it’s own unique blend of plugins.
  • Screenshots (if relevant)
  • Evidence of bug (e.g. PHP error message or js console error message)
  • NOTE: If you’re using WooCommerce the system status report will help you quickly gather the most important information for a bug report.

The more information you can provide first time, the faster the theme author or plugin developer will be in a position to help you.

Theme Bugs

By now, in our experience there’s a very high probability that you’ve found the root cause of your issue. If your issue persists, then it’s time to put the theme under the spotlight! Leave your plugins active this time for this task. Now switch over to one of the default WordPress themes – I usually recommend Twenty Fifteen as it’s the most recent WordPress default theme that rarely has bug reports at this point and has excellent coding standards.

If you switch to Twenty Fifteen and your issue fixes itself then that’s a sure sign that something the theme is doing is causing your issue. It might not be a bug per se – but it’s definitely something the theme author will need to look into. At this point I would follow the same Bug Reporting process detailed earlier – but this time direct it to the theme author. Again, the more precise the bug report – the better.

Prevention is better than cure – take plugin due diligence very seriously

WordPress in wonderful. It’s diverse and enormous ecosystem of themes and plugins allow us to quickly bend and shape WordPress to do almost anything we want it to do. But that wonderful flexibility is also it’s greatest weakness. The more you bend and shape it the more likely you are to run into problems that need troubleshooting.

It’s really really important to conduct due diligence on every single plugin you install on your WordPress website.  Prevention is better than cure – and generally if you keep the number of plugins down to as small a list as possible and take care to only install well supported, mature plugins from respected plugin developers you’ll run into very few problems that can’t be easily identified. It’s no surprise that the customers who come to us with issues most are generally the ones who install tons of plugins on a whim without really considering if they need them and they end up with tons of conflicts and a significantly slower website than they otherwise would have.

Still can’t pinpoint the issue? Seek Professional Help

If you still haven’t been able to pinpoint the issue at this stage, it’s time to bite the bullet and seek professional help. It’s rare that you see any 2 WordPress installs configured identically. Every WordPress website ends up being a quite unique when you consider:

  • the specific plugins installed – including their specific versions
  • the core configuration files
  • the web hosting configuration including any custom .htaccess rules and php.ini overrides
  • the specific theme activated – and any child theme customizations
  • the underlying core operating system version and PHP/MySql versions
  • the content in your database (yes this can be a point of failure – especially if you have custom Javascript in pages and widgets)

This significantly increases the number of points of failure versus hosted publishing and eCommerce platforms like Squarespace and Shopify. That WordPress ecosystem flexibility and diversity comes at a price folks.

So what do you do? Unless you’re a full stack web developer who understands everything from Linux system administration through to modern responsive css, HTML and Javascript, it’s very very hard to do all of this on your own.

It’s also not your hosts responsibility. A good one (like Siteground) will go above and beyond the call of duty to help you. But when the chips are down it’s not their responsibility. They will only be able to help so much. It’s also not the theme authors responsibility. Sure they’ll help when you identify specific theme bugs (assuming you’ve bought a theme from a reputable theme author!) but it’s not the theme authors job to troubleshoot your specific WordPress instance with all it’s unique points of failure. And it’s not the plugin developers responsibility either. Again the good guys and gals will help when it comes to specific plugin bugs but as we’ve seen, in good plugins these are rarely the cause of your problems.

If you previously hired a WordPress Professional to build your website for you then hopefully you’ve maintained some sort of ongoing maintenance and support relationship with them and you can make all of this their responsibility. If you’re a WordPress Professional, hopefully this Troubleshooter will also help you to improve your troubleshooting skills. Even seasoned WordPress Professionals struggle with this stuff – particularly as it can be incredibly time consuming to trace where the root cause of an issue lies – and gets much much harder with the passage of time due to plugin updates, theme updates, changes made by other third parties, changes to the hosting environment – you get the idea!

If you’re stuck and don’t have access to a WordPress Professional, you’ll be delighted to hear that a lots of WordPress Support Services have started springing up the past few years – who are providing a solution to the “not my problem, talk to the other guy” problem. Here are just a few we recommend:

WP Curve – love these guys – they’ve built a super successful business in no time at all – prices from $79/mo – $199/mo.

WP Site Care – another great business. Prices range from $29/mo – $239/mo.

When you consider how much it would cost you to hire somebody even on a part time basis, these services provide excellent value and peace of mind to help support your website on an ongoing basis.

Share The WordPress Troubleshooter On Your Site


CommerceGurus heading for WordCamp Europe!

WordCamp Europe is on in Seville, Spain from this Friday, June 26th – Sunday, June 28th 2015. After nearly a year in business we’re taking a breather for a couple of days and heading down to scorching Seville to meet up with over 1,000 other WordPressers for 3 days of what is sure to be interesting talks and hopefully a couple of Cervezas in the sun 🙂

Did I mention the heat?

FireShot Capture 14 - Seville Weeken__ - http___www.accuweather.com_en_es_s

LOL – WTF? Yellow warning for the heat!

There’s a super line up of speakers and Seville is a super city so we’re really looking forward to meeting lots of fellow WordPress peeps over the next few days!

Assuming we’re still alive next week and we don’t combust we’ll report back with a roundup of what went down in Seville 🙂

How much does an eCommerce website cost?

Ah the age old question of cost! It can be quite the mystery as to what the hell an eCommerce website will cost you. Today we take a look at what key factors will influence the cost of your eCommerce website.

It’s about time. Mostly.

The biggest determining factor for how much your eCommerce website will cost is time. How long will the project take? Who needs to be involved? How much does it cost to employ the necessary people for the duration of the project? Answer those questions and you’ve established a huge aspect of eCommerce website costs.

The In House eCommerce Team

If you’re hiring an In House team to build your eCommerce website you’ll probably need a minimum of 3 people (but potentially many more depending on the scale and scope of the project).

  • eCommerce Project Manager (PM) – a jack of all eCommerce trades. This person ensures the project gets done on time and within your budget. They will often also be Lead QA, Lead BA, Content writer and will often get their hands dirty with code if required/allowed. On bigger project the PM will recruit and manage individuals for these specific disciplines.
  • Lead Developer – the main person responsible for producing the code – either 100% bespoke (not recommended for about 80% of projects) or on top of an existing eCommerce software platform (see below). On bigger projects there could be at least 2 or 3 additional developers led by the Lead Developer.
  • Lead Designer – in this definition the Lead Designer is the person taking the initial early Visual Design/branding stage straight through to the low level HTML/CSS/JS. On larger projects it’s likely that you would have a number of frontend developers who are solely responsible for frontend engineering.

So you’re looking at a team of a minimum of 3. But very quickly you could require a team of 9-10 people if your project scope requires it. So how much does that cost? The job market for people with eCommerce expertise in 2015 is about as red hot as it’s been in 15 years so you’re probably looking at an average of $100,000 per person per annum.

So a team of 3 will cost you in the region of $300,000 per annum. A team of 10? In the region of $1 million per annum. WHAT? Yip, good eCommerce people ain’t cheap folks 🙂

Your mileage may vary depending on your location in the world but $100,000 per person as an average all things considered including healthcare costs, employer taxes, office/hardware etc. is pretty reasonable. If you’re based in San Francisco or New York it’s definitely considered cheap!

There’s been a pretty seismic shift happening in the web agency world of late where large well known agencies have been gobbled up by big organisations who now believe it’s not smart to rely on an external agency for what is now a critical part of running any business with big ambitions in 2015 – design and software engineering excellence. But for many businesses their scale and revenue cannot justify the investment an in house team requires.

My recommendation would be that a full eCommerce In House team should only be considered for businesses who are turning over in excess of $3m per annum.

Why $3m? At that point you can hire a team of 3-4 people and your costs will be in the region of 10% of turnover. Before reaching this point my recommendation would be to rely mostly on external agencies as they should be able to provide many of the benefits of an in house team at a lower price point. (NOTE: We’re specifically talking about an eCommerce team here – NOT the entire team required to run your eCommerce website. You’ll also need to think about the people you need to manage order fulfilment, shipping, accounting, stock etc. but that’s for another day!)

The one person I would not outsource to an agency from day one is the person responsible for the commercial success of your eCommerce website. This could be you! As you grow, this is going to be an eCommerce manager who will most likely manage your agency/freelance team and eventually your in house eCommerce team.

So your maturity as an eCommerce business is vital to determining how best to go about building an eCommerce website.

The stages of eCommerce maturity

The first thing to consider is where you are at in terms of your own eCommerce experience. We’re not talking necessarily just about technical skills here. We’re talking about your own personal experience when it comes to owning and operating eCommerce ventures. This is incredibly important when it comes to determining the costs associated with building you an eCommerce website.

Why? A wide range of skills are required to run a successful eCommerce operation; world class sales and marketing expertise, top class branding and packaging, a 6th sense for customer price sensitivity, excellent customer service and fluency in digital marketing and how eCommerce management systems work.

For those who’ve never run an eCommerce website before, this list can seem intimidating. Well it should be! Running a successful eCommerce operation is not easy and it takes time to acquire these skills. If you’ve gained them already through running your own eCommerce websites or by working for another eCommerce website you’ll already be ahead of the game when it comes to talking to building a new eCommerce website.

If you’re entering into the eCommerce world without experience in these areas, be prepared to spend a lot of time learning the ropes. If you’re considering working with an agency to build your eCommerce website, a good one will want to know what level of eCommerce fluency and expertise you have as this incredibly important to almost every aspect of building the website. Typically if you’ve less eCommerce fluency things can take a lot longer as there will be a steep learning curve for you during the project. The agency will also most likely have to factor in a longer lead time for training and post project completion support as you get to grips with running an eCommerce website.

For those who have extensive eCommerce experience it’s usually possible to get to the root of exactly what is required much quicker which can help reduce the time required to complete the project – thereby reducing overall project costs. We can determine your eCommerce maturity be using the following framework.

eCommerce Maturity Framework (EMF)

This maturity framework is really just a high falutin way of establishing where in the grand scheme of things your eCommerce business is. Are you a multi million dollar eCommerce operation with a big team in place who are looking to increase conversions by 5% per annum? Or are you a one man operation who can just about turn on a computer who wants to start selling your beloved hand painted sea horses online? These are 2 very different types of situations requiring very different approaches.

eCommerce Maturity Framework

eCommerce Maturity Framework (EMF)

  • Small – You’re probably just getting going. You may be a one or two man operation. You probably don’t know a lot about eCommerce. You can benefit a lot from the guidance of an external agency. Your budget (or lack thereof) also prohibit you from building an in house team.
  • Medium – You’re a pretty successful eCommerce operation with revenues in excess of $1m per annum. You’ve developed some pretty sharp eCommerce skills to get to this level but you still need the assistance of an external agency to help drive your business forward.
  • Large – You’re an eCommerce business turning over in excess of $5m per annum. You’ve reached a point where it now starts to make sense to build an eCommerce team internally. You can still keep working with an agency if you wish (particularly for one off specialist projects), but you should definitely give consideration to building a team in house.
  • Enterprise – You’re an eCommerce juggernaut with revenues in excess of $10m per annum. You NEED an in house team just to keep up. You’ll likely have a ton of projects that you need to execute on an ongoing basis to continue to grow the business. At this level, an in house team is a necessity to realize long term benefits of having a team of people focused just on your business.

Using the EMF to help make decisions about how to build your eCommerce website

Simply put, you can use the EMF to assist you make decisions about when is the right time to build an in house team. It doesn’t make financial sense in general to build an in house team for SMALL and MEDIUM sized eCommerce websites. But once you go beyond $5m per annum it starts to look like a more compelling option. LARGE and ENTERPRISE eCommerce websites are in a enviable position where they can start to build a team to work on long term, visionary projects that require significant investment that’s just not possible for smaller operations. In this situation you will want to build that kind of expertise in house as it becomes a source of sustained competitive advantage in your business in the long run.

So what about Small and Medium sized eCommerce websites?

So you’ve determined you not ready for an in house team just yet. What are your options? The good news is that you have tons of them – if anything, too many! Here’s what I would recommend.

Newbie eCommerce Website

For anybody who is a newbie to eCommerce your objective should be to spend as little as possible in the beginning. The harsh reality is that the vast majority of eCommerce entrepreneurs will fail. That doesn’t mean you shouldn’t try. It may mean though that you will attempt this eCommerce thing a few times with different ideas and products in different markets before you start to build some traction.

For Newbies, CommerceGurus Recommends: Shopify

Shopify is about as simple as it gets. You don’t need to worry about your own hosting or servers. You won’t have to worry about software and server upgrades, server security, ssl certificates, order emails and so on. Shopify take care of all of this for you.

Shopify pricing

Shopify pricing

From as little at $14.99 per month you can be up and running with your own eCommerce website in a matter of minutes. That’s hard to beat! What’s more, Shopify is designed to scale with you as you move up through the different stages of the EMF. There are many enterprise eCommerce websites with sales in the millions that continue to use Shopify. If you have no existing website (and associated hosting costs) then Shopify is a no brainer, particularly if you don’t want to go down that road at all. On top of your monthly costs, you are also likely to spend money on how your eCommerce website looks (which is what is known as Shopify Themes). Themes typically costs between $100 and $200 for Shopify.

Shopify Costs for a Newbie eCommerce website (per annum)

  • Starter Package on Shopify: $179.88 per annum (14.99 * 12)
  • Shopify Theme: $200
  • Domain Registration: $15 per annum

Total: $394.88 

So for under $200 per annum and a one off $200 for your theme you’re getting a world class eCommerce platform.

Custom Shopify Theme Design

As you get more and more traction you may wish to consider creating a custom theme for your store. A custom theme will differentiate your store from others that use your previous “off the rack” Shopify theme. A custom Shopify theme will cost considerably more than the off the rack one you might have previously purchased. Custom theme design prices will be based primarily on 3 factors:

  • The complexity of the design you wish to implement.
  • The scope of the project.
  • The expertise of the agency/freelancer you choose.

The third variable, agency expertise, is perhaps the most important. Typically a well known, experienced Shopify expert who create custom theme designs full time and who is based in a Western country is going to cost considerably more than a new expert based in a developing economy. You will need to choose an Shopify Design expert that’s right for your project. A good indicative cost for a custom Shopify theme would be in the region of $2,000 – $5,000 for a small eCommerce website. Prices for medium, large and enterprise eCommerce websites can be significantly higher (e.g. $20,000 – $50,000).

So if Shopify is so damn amazing why isn’t every eCommerce website in the world just using that you may ask? Shopify is what is called a Software as a Service (SASS) product meaning that you do not have direct control over the software – which is fine and dandy – as long as the software provides all the functionality that your business needs. For most conventional eCommerce businesses, Shopify should be more than sufficient. But for those that need something that Shopify doesn’t provide what alternative options exist?

For intermediates and experts, CommerceGurus recommends: WooCommerce

Regular readers of this blog will know we are especially fond of WooCommerce. In a few short years WooCommerce has become one of the most popular eCommerce platforms in the world. If you already have a WordPress site in place and have experience managing websites running WordPress, WooCommerce is an excellent starting for both Small and Medium eCommerce websites with intermediate and expert eCommerce fluency. If you’re a small, newbie eCommerce website with little or no prior WordPress eCommerce you would be better sticking with Shopify unless you’re prepared to spend a good bit of time and money to figure out how to use WordPress, setup your own hosting, payment gateway and so on which can be intimidating if you’ve never done it before. (HINT: DON’T go down this road if you’re just looking to get something up and running quickly).

But if you’ve already figured out WordPress you’re in a great position to jump into WooCommerce quickly.

WooCommerce costs for a typical intermediate/expert website (per annum)

So your annual costs for running a typical WooCommerce powered eCommerce website will be between $735 and $2000. This is a bit higher than the entry level Shopify plan (although the entry level Shopify plan is quite restrictive for all but the simplest eCommerce websites). When you go the self hosted route you will have a multitude of costs which you’re most likely paying to different providers.

Even if you already have WordPress hosting, it may not be suitable for running an eCommerce website. You’ll also have a myriad of additional costs for things like SSL certificates that Shopify would previously have looked after for you. You will also most likely need some commercial WooCommerce plugins which will vary in price (there are also plenty of excellent free WooCommerce plugins but we’re focusing on costs for now). A typical WooCommerce plugin will cost between $50 – $200.

In our experience it’s common that a typical WooCommerce website might end up using between 5 and 10 commercial plugins. Each of these plugins will typically have an initial cost plus a renewal an annual fee for future upgrades and support. (Find out where to find the best WooCommerce plugins).

Custom WooCommerce Themes

Just like with Shopify, there is a massive ecosystem of WooCommerce experts creating a wide range of WooCommerce themes and plugins. In fact it is this ecosystem which makes WooCommerce so compelling. Chances are there will be a plugin out there for the majority of use cases that you as an eCommerce website owner might think of. And if there’s not, you can either build it yourself or hire a WooCommerce expert to build it for you. This removal of constraints is a key differentiator from Shopify. If the nature of your eCommerce business requires something a bit different from the general shopping cart experience, it could be that WooCommerce gives you a platform that you can shape to meet your needs.

What does a custom WooCommerce theme cost?

In our experience, when we create a custom WooCommerce theme for a client, we’re generally doing a lot more than creating just the theme. We’re usually leading an eCommerce implementation project from start to finish. In this scenario, you’re typically talking about the following:

  • Requirements Gathering/Discovery – this starts with establishing your eCommerce maturity using the EMF framework we revealed earlier. We then move on to define the goals of the project, including defining the scope, features and deadlines for delivery. For larger projects this will extend to creating high fidelity prototypes of all aspects of how the shopping experience will work. When we work with SMALL eCommerce websites, this is typically a 3-5 day exercise. With MEDIUM and LARGE eCommerce websites, this is typically a 15-20 day exercise. For ENTERPRISE eCommerce websites this process can take 2-4 months to complete.
  • Design – The Design Process typically splits out into 2 distinct sub phases.
    • Visual Design – The client and the designer work together to agree the overall visual design concepts for the new eCommerce website. Traditionally, client concepts were created as pixel perfect concepts in Photoshop and refined ad infinitum based on scope constraints to signoff. Nowadays it’s much more common to design within the browser to produce rapid HTML prototypes to fully consider the multitude of different types of browsing devices.
    • Frontend engineering – Once the Visual Design has been agreed, the frontend build is completed. This used to be a reasonably straightforward task. With the evolution and advancement of frontend frameworks, responsive design,  javascript frameworks, pre-compilers and linters, the frontend engineering phase has become critical to delivering highly innovative and engaging eCommerce user experiences.
  • Development – The development process will typically involve the following:
    • Install and configure WooCommerce
    • Install and configure all required WooCommerce and WordPress plugins
    • Implement any custom features and functionality as per the agreed project scope
    • Developer QA and Testing
  • Testing
    • Beta release and UAT test cycle
    • Performance testing
    • Cross browser testing
    • Code Freeze
  • Handover and Training – it’s at this point that once the code is frozen, all products and associated content are loaded for production use. Typically for SMALL eCommerce websites, we expect and recommend the customer do this. Typically this is possible for smaller eCommerce websites as there might only be a handful of products.
  • The cost of imagery – this one is not to be underestimated. We talked before about the importance of your product imagery on eCommerce websites. If you don’t already have great product imagery, you might need to set aside a separate budget for product photography ($500 – $2,000 would be typical for a small eCommerce website with a limited product range).

A typical budget for a WooCommerce custom eCommerce project would be between $10,000 and $20,000 for SMALL to MEDIUM eCommerce websites. Scope and eCommerce maturity will significantly influence which end of the scale a project will fall into.

How much for Large and Enterprise Websites?

As you can see, there are a ton of things to consider just for Small and Medium sized eCommerce website – never mind the larger ones 🙂 We think that deserves a blog post of it’s own which we’ll be working on very soon so make sure to sign up for our newsletter to be notified when it’s published.

Further reading!

WPBeginner has a great guide covering How Much a WordPress website costs in 2017 – it covers WordPress in general as well as WooCommerce – go check it out!








Best WooCommerce Hosting Plans – Part 3 – VPS Providers

In Part 3 of our Best WooCommerce Hosting Plans we take a look at the VPS market and share our recommended VPS for WooCommerce hosting.

Why so long for Part 3?

In the 4 months that have passed since I wrote Part 2 of this guide we’ve been crazy busy here in CommerceGurus HQ. We launched the wildly successful Adrenalin WooCommerce theme  at the end of October which took off like a rocket and meant we put our blogging duties were neglected. We’ve also been working on a number of exciting consulting projects and have a few more themes in the pipeline for 2015 so stay tuned for more frequent posts in the near future 🙂

WooCommerce Hosting Still Sucks!

My experiences the past few months helping to support our Adrenalin customers continues to highlight the sad state of affairs that the vast majority of WordPress hosts are not suitable at all for WooCommerce. It’s quite common for WooCommerce to add a second or two to the load time of a vanilla WordPress install with no other themes or plugins installed. The situation gets much worse on your average WordPress install where a user might have 20, 30 or more (shudder) plugins installed and fails to do Plugin Due Diligence. Plugin Due Diligence is the simple process of making sure that the plugin you’re about to install is:

  • Reputable – who is this developer? what’s their track record? Do they have a blog? Are they active on social media and on support forums? What do other people say about them?
  • Fast – how well is the plugin coded and how much additional load does it add to my site?
  • Up to date – when was the plugin last updated? Does it support the latest versions of WordPress and WooCommerce?

Most people don’t conduct serious Plugin Due Diligence and then end up with a slow eCommerce website. You might get away with that with a simple WordPress site as you can always fall back on a caching plugin like W3 Total Cache.

But the big problem with WooCommerce is that a caching plugin won’t hide a lack of Plugin Due Diligence or underpowered crappy hosting (or both).  WooCommerce features like dynamic carts on every page with your subtotal/item quantity displayed render caching plugins pretty much useless. Not entirely useless but pretty useless (caching is still ok for users who’ve not added anything to their cart – but they’ll most likely notice a huge slowdown once they add something to their cart which will impact on conversion!). You’ll no longer be able to create static copies of your site because if you did then your users wouldn’t be able to see a dynamic cart. You might get away with this on a simple content focused blog but if you’re serious about selling online, speed is so important.

The search for the perfect WooCommerce host.

All of these factors described expose the fact that most big WordPress hosts were not designed to be optimized for eCommerce. This is a huge problem in our community. Most WooCommerce users are not aware of this. Most assume as WooCommerce is “just another plugin” that their crappy shared host should be fine. That’s not the case.  In my view, WooCommerce needs a completely different type of hosting solution – one that is focused on in memory caching like memcached and performance tuned database instances. To date, there’s been very little in the way of WooCommerce specific tuned hosting. Compare this to the Magento community where there’s tons of Magento specific hosting services. Right now the perfect WooCommerce host doesn’t exist – and that’s a damn shame.

So I know you’re probably thinking at that point “Hang on I thought this post was about the best WooCommerce hosts – not a rant about crap ones!” Well it is, it’s just taking me a while to get there 🙂 It’s important to set the context that it is my opinion that this is an underserved market and that the hosts we’re recommending here are damn fine hosting companies but no one has created the perfect WooCommerce hosting platform yet.

I think there’s a huge opportunity for a clever host to dominate this market in 2015.

In the meantime let’s take a look at our VPS recommendations for WooCommerce.

A note about our judging criteria

NOTE: Our shortlist of recommended VPS providers is completely based on personal experience in hosting eCommerce websites over the past 15 years. In that time we’ve developed a pretty good spidey sense for what makes a good host. We’ve seen good hosts come and go. Of course we’ve also spent the time to review the low level numbers provided by hosting industry experts before ever signing up with a host. But the shortlists below are largely based on personal experience as customers of each host.

Best Unmanaged VPS for WooCommerce

TL;DR WARNING: Do NOT select an unmanaged VPS unless you’re comfortable with managing a Linux server via the terminal/command line.

An unmanaged VPS is not for the faint of heart. If you’ve never managed a Linux machine via a terminal session/command line before then I wouldn’t recommend you go down this route if you’re in need of an immediate host for your WooCommerce powered store. That said, if you’re just getting up and running and are keen to learn the dark arts of Linux sysadmin, then by all means proceed down the rabbit hole of an unmanaged VPS. Be prepared for a few months of learning how to do things via a command line, how to setup web servers and mail servers from scratch, how to secure your VPS with your own firewall, how to harden your web server, how to manage backups and rotate log files. The list of tasks goes on and on. If you’re in a time crunch you absolutely don’t need this additional overhead. But if you’re keen to experiment with your own machine – then cool – go for it! You’re also going to have to get used to your hosting company saying “sorry can’t help you!” If you’ve come from the comfort blanket of managed hosting this can be unsettling for a while – especially if it’s in the middle of a crisis and you’re trying to figure out what the hell is going on with your server!

If you’ve already got the sysadmin/devops chops then going the unmanaged VPS route for WooCommerce has some significant benefits. YOU get to build your own highly tuned VPS that you can optimize for first class eCommerce performance. This is THE major significant advantage going the unmanaged route has over the managed VPS route. By going unmanaged you can build out your WooCommerce server to utilize nginx, PHP-FPM (or PHP-HHVM if you’re really brave), memcached and Varnish. Plus you also gain a lot more control over your database instance and can make your own performance optimizations based on what’s right for your site. This can be incredibly valuable (and almost a necessity for high traffic WooCommerce stores) as your store starts to grow. Quite simply, the major advantage of this approach is that it’s possible to tune an unmanaged VPS on a next generation custom LEMP stack and throw a lot more traffic at it than you would get away with on most managed VPS providers – which means you’ll save a lot in monthly hosting costs if you invest in your sysadmin capabilities. It will be up to you as what what makes most sense for your business.

Shortlist of Recommended Unmanaged VPS providers for WooCommerce

Honestly, I wouldn’t hesitate recommending ANY of the 3 hosts below. They all provide top class unmanaged VPS machines. Each has their own strengths and weaknesses.

  • To this day, Linode are still the first host I go to when I want a rock solid host for production sites of any kind.
  • They are a 6 out of 5 host on basically any criteria you can think of to judge a hosting company.
  • In recent years they’ve come under increasing competitive pressure from the likes of Digital Ocean (DO) but they’ve responded brilliantly in kind with new SSD plans and pricing to compete with DO and similar contenders.
  • For WooCommerce sites I recommend no less than the Linode 2GB plan ($20/mo.) I would also recommend starting with the Linode 4GB ($40/mo.) if you’re getting any kind of traffic to your online store.
  • I also strongly recommend the first thing you do is to enable backups of your Linode (another $5 per month on the 2GB plan). The Linode backup system is worth it’s weight in gold for an eCommerce site and it’s one of the best in the business.

Digital Ocean (DO)

  • Digital Ocean appeared out of nowhere a few years ago. A combination of ultra cheap servers ($5/mo), high performance SSD disks, a great API for managing droplets (what DO called their machines) and some super slick marketing meant that DO has quickly gone from the new kid on the block to one of the biggest hosting companies in the world.
  • DO droplets are awesome. The DO control panel is incredible for managing Droplets.
  • Personally, I still have some concerns with trusting DO for my production sites. The backup system in DO is still not as well developed as I’d like it to be. I’ve also had issues with it’s reliability over the past few years. In one case it took me sending a support ticket for their sysadmin team to realise backups had not run on one of my droplets for a few months. That’s NOT the kind of experience that gives you warm, happy feelings inside when it comes to running an eCommerce site.
  • What I do love about DO is it has become my development playground. Low powered machines for $5/mo. is a great way to spin up a new machine for a few weeks to experiment with something new before moving to production.
  • I would NOT recommend the $5/mo. droplets for production use with WooCommerce sites. The DO 2GB droplet is the same price as Linode – $20/mo.


  • Rackspace is a stalwart of the hosting business. It’s servers are trusted by some of the biggest eCommerce players in the world.
  • Rackspace are more expensive. For a 1GB machine you’re looking at about $25 per month. So for the equivalent 2GB minimum we recommended for Linode/DO would be approximately $46.72 per month.
  • So why go with Rackspace rather than DO or Linode? If you’re completely comfortable managing your own machines then there’s probably no reason to do so. But if there’s even a chance that you might need some form of managed service in the future then I would recommend Rackspace. Their managed service is the best in the business.

The Winner – Best Unmanaged VPS for WooCommerce

If I had to just choose one unmanaged VPS provider over the others on the shortlist it would have to be Linode. While competition in this segment of the market is heating up, Linode for me are still head and shoulders above the competition – particularly given the importance of a stable, rock solid host for eCommerce.

Best Managed VPS for WooCommerce

There are tons of managed VPS hosting providers out there. Do yourself a favor – avoid at ALL costs the VPS plans offered by the likes of Bluehost, HostGator and GoDaddy. Just don’t do it! A managed VPS will always be more expensive that an unmanaged one given that the hosting plan also includes some form of technical support that you simply won’t have with an unmanaged server. For many WooCommerce users currently on shared hosting plans and with little or no server/system admin skills, you should avoid unmanaged VPS plans and go straight to a managed VPS plan.

Shortlist of Recommended Managed VPS providers for WooCommerce

I’ve used the services of pretty much every host on the list below in the past few years. Again, I’d be happy to recommend pretty much any of these hosts. Again I’m setting a minimum requirement of 2GB RAM and ideally SSD disks. You won’t find a huge amount of variance on the price of each host on this list at that spec as this is an extremely competitive market. All of these hosts will each have their own unique strengths and weaknesses (e.g. Knownhost don’t provide a Live Chat but their email response times are pretty good) Nearly all of them will be offering CentOS machines running Cpanel, Daily backups, Managed Support (with decent experience with WordPress. ), Free Migrations, Root/SSH access. Some will also offer a number of different locations across the globe which can be useful if your audience is concentrated in one particular area. In some cases these providers may also offer an unmanaged plan for approximately $15-$20 cheaper. Again, avoid this unless you’re happy managing your own servers each month.


Perhaps the most WordPress centric of all the providers on this list. Siteground have been lots of waves in the WordPress community the past few years as they get more involved in the community itself, but also for providing servers that are optimized for optimal WordPress performance. I’ve a had a lot of dealings with Siteground the last year and I can safely say know WordPress inside and out. Their servers are also hard to beat.

Recommended Plan: Cloud 1 Plan – 2GB RAM, 40GB SSD, 1TB Bandwidth – €51/mo. (approx $58/mo.)


Knownhost are probably considered to the best managed VPS hosting company in the world right now. Their support is legendary and their servers are rock solid. I’ve run several VPS machines with Knownhost over the years and have never had a single issue with them. Top quality hardware and a support team that really know their stuff.

Recommended Plan: VPS-SSD-2 Plan – 2.25GB RAM, 40GB SSD, 5TB Bandwidth – $50/mo 


We’ve already discussed Rackspace earlier on when considering unmanaged VPS providers. Their support team are right up there with Knownhost as one would expect from one of the biggest hosting companies in the world.

Recommended Plan: General1-2 mPlan – 2GB RAM, 40GB SSD, Bandwidth n/a, – $55/mo.


I’m grouping WiredTree and Futurehosting together purely because while I’ve used both of these providers before, I’ve not spent sufficient time with them to really put them under stress – but they have excellent, long standing reputations in the managed VPS market.

Wiredtree Recommended Plan: Pure SSD VPS – 2GB RAM, 40GB SSD, 4TB Bandwidth – $55/mo.

Future Hosting Recommended Plan: SSD3 Plan – 3GB RAM, 50GB SSD, 3TB Bandwidth – $44.5/mo.

Other notables which come highly rated (but which we’ve not tested)

A Small Orange – Some people swear by A Small Orange but I can’t ignore their recent acquisition by EIG which has been the death knell for many a good host over the years.

EuroVPS – Based in Amsterdam which can suit European based sites/stores more so than many of the other VPS providers who don’t have European data centres.

Liquidweb – Rock solid but a good bit more expensive.

The Winner – Best Managed VPS for WooCommerce

I’m really torn on picking a winner for the best Managed VPS for WooCommerce. If you had asked me this question 12 or even 6 months ago my answer would have been unequivocal – Knownhost. Knownhost for me are head and shoulders above the competition in terms of consistently superior customer service and rock solid, high performance machines. I continue to be a customer of Knownhost to this day and I’ve NEVER had a single fault on their machines. But and this is where my earlier rant comes full circle folks, Knownhost suffer from the same impediment as nearly every other managed VPS provider on the shortlist. They don’t as of yet provide a VPS platform that’s been optimized for WordPress and WooCommerce.  In fact, NONE of my shortlist do as of yet offer machines that have been optimized for high volume eCommerce/WooCommerce stores. But one does come close. Damn close. And for this reason I’m going to make them the outright winner in this category – Siteground. Remember folks there’s very little to choose amongst all of the managed VPS providers on my shortlist. But Siteground do offer one major differentiator that the others do not. The Siteground Supercacher. The Supercacher is actually a series of different caching mechanisms that you typically won’t find on any shared or managed VPS provider. Normally you’d have to go down the unmanaged DIY VPS route to avail of these. Which is why it’s so interesting and promising to see a managed VPS host introduce these technologies to the masses via an easy to web user interface. In a nutshell you get all the good stuff like Varnish and memcached without the significant sysadmin overhead. And it all works swimmingly well. Siteground have also tuned their servers to be optimized for WordPress and performance in general which makes a huge difference with some managed VPS providers who are essentially just giving you untuned stock cPanel/WHM instances. On top of that here are some other major differentiators that are normally reserved for Managed WordPress hosts (which we’ll be looking at in Part 4!).

  • Git repo
  • Free CDN
  • WordPress Staging Environment (worth it’s weight in gold – you can test all your new plugins/themes/code changes in the safety of a sandboxed staging environment before going live).
  • Automatic WordPress version updates

I’ve been using Siteground for over 12 months at this stage and I’m mightily impressed by what they’ve been able to achieve to differentiate themselves in this hyper competitive market. Their support is pretty good too. I don’t think they’re quite as good as Knownhost from that perspective but they do have a live chat support service that Knownhost don’t offer. Siteground for me are an example to all other VPS providers as to what they need to be doing to compete and differentiate in 2015. I’m hopeful that others will follow shortly and I hope to see someone really go to town and produce a compelling managed VPS plan optimized specifically for WooCommerce in 2015.

Turbocharge your WooCommerce store load times

Today we take a look at some of the most effective ways to speed up your WooCommerce powered store.

Let me get straight to the point. For most people, WordPress is slow. And WooCommerce is even slower. Why is that? A few reasons:

  1. Lack of caching in core – by default, WordPress reads all content from the database. Same goes for WooCommerce. You mighn’t notice this too much when you just have a small blog with a couple of posts. But throw in WooCommerce and a couple of hundred products and you’ll start to see things slow down.
  2. Underpowered, shitty shared hosting – we’re on a bit of a mission to get WooCommerce store owners to stop using shitty shared hosting providers for their WooCommerce stores. You get what you pay for – and you’ll really feel the pinch if you skimp on hosting when it comes to eCommerce.
  3. Bloated WordPress installs with tons of plugins and bloated themes – It’s not really the number of plugins that’s the problem. It’s more store owners and WordPress users in general feeling like it’s ok to just install any old plugin without realizing that it could be a complete dog, full of bugs, poorly written and causing performance bottlenecks on your website. You need to develop a really good sense for detecting if a plugin is impacting on the performance of your website. Know your average load times and know them well. When you install a new plugin see if it makes any difference to your load times. Same goes for themes. A lot of themes are not very well coded when it comes to WordPress standards and can cause significant performance issues for your website.

It’s important to remember that WordPress itself can be made to run very very fast. Heck gets approx. 131 MILLION unique visitors per month which makes it one of the most visited websites on the planet. The problem is that the default experience for most people is not this superfast traffic devouring machine. It’s a slow, easily broken mess. Managed WordPress hosting goes some way to helping solve this problem. Managed hosting services are putting in place hosting infrastructure similar to that used by so that the rest of us can enjoy the kind of speed that has. Speed is important for any website. But especially so for eCommerce websites.



Speed is one of the most important aspects of a highly successful eCommerce website. Think about it. When was the last time anyone complained that placing an order on Amazon was slow? Pretty much never. In fact, if anything, it’s almost too damn easy and quick to place an Amazon order 🙂 Studies have shown that if you’re site is loading any longer than 4 seconds, you’re losing orders and lots of them. Once load times go up to 10 seconds, you’re losing well over 90% of your traffic. If you’re losing this much traffic, think about what that is doing to your conversion rate. For many, the simple act of getting a decent web host can significantly increase conversion rates, simply because you’ve made it easier and quicker for customers to complete orders! So let’s assume you sort the hosting issue, what else can you do to turbocharge your WooCommerce site?

Minify all the CSS

If you’re using one of our WooCommerce themes, we’re already minifying Javascript by default for speed optimization. But if you’re looking to shave some additional time off your page load you need to install BWP Minify. Better WordPress Minify is one of the better WordPress minification plugins available.

Configuring BWP Minify for the Captiva theme

Just to take the example of how we tune our demo speed with BWP Minify.

  • Open BWP Minify -> General Options.
  • Deselect “Minify JS files automatically” – by default Captiva minifies all js files that can be minified. If you leave JS minification active in BWP Minify this may cause your site to malfunction.
  • Select “Minify CSS files automatically?”

Here’s a screengrab of our General Options config:


Click to view larger version of settings page.


  • Go to -> Manage enqueued files
  • Scroll down to “Managed enqueued CSS files”
  • Add a full list of CSS handlers to not be minified under the “Styles to NOT minify”
    • admin-bar
    • dashicons
    • layerslider-group-css
    • cap-captiva
    • js_composer_front
    • background-style
    • aio-tooltip
    • cap-responsive
    • ultimate-headings-style
    • stats-counter-style
    • info-box-style
    • timecircle
  • Doing so will ensure your site continues to load correctly after minification is complete.
  • And you’re DONE!

I’ve seen minification alone knock 5-6 seconds of page load speed for some websites. So go forth and minify! We’ll be back soon with more tips on how to turbocharge your WooCommerce website.






Where to find the best WooCommerce extensions

The core WooCommerce plugin is pretty awesome as a kick ass eCommerce platform for most store owners. But chances are you’ll find it lacking something you need sooner rather than later. Today we take a look at the best places to find the best WooCommerce extensions for your online store.

WooThemes Extension directory

It’s no surprise that the absolute best place to find a vast collection of WooCommerce extensions is over at WooThemes.

As of October 3rd 2014, WooThemes has approximately 313 extensions available! In addition to cranking out their own extensions on a regular basis, the Woo folks also partner with some of the best WooCommerce developers to release tons of new extensions for seemingly every possible use case. What I also like most about this official extension ecosystem is that every extension has been well tested with the latest and greatest versions of WooCommerce and every extension goes through extensive testing by the WooThemes team before being released.

Codecanyon WooCommerce Listing

The second most popular source of WooCommerce extensions has to be the Codecanyon WooCommerce category. Codecanyon reports that there are over 420 plugins available at the time of writing. Some of the plugins available on Codecanyon are amongst the most popular WooCommerce extensions on the market including:

Table Rate Shipping for WooCommerce

WooCommerce Amazon Affiliates

Fancy Product Designer

While Codecanyon houses more WooCommerce extensions, quality and support can sometimes be a concern. My recommendation to any store owner would be to carefully research any prospective purchase on Codecanyon to ensure the plugin author is active, provides support and keeps the plugin up to date with the latest versions of WooCommerce.

WordPress plugin directory

Last but not least if the official WordPress plugin directory. A simple search for WooCommerce reveals over 1,000 plugins report some form of compatibility with WooCommerce. While this doesn’t translate directly to WooCommerce specific extensions it’s an indication of the breadth of plugins available via the official WordPress plugin repository for WooCommerce.


Common WooCommerce mistakes

Today we take a look at some of the most common mistakes we see store owners make with WooCommerce time and time again.

WooCommerce is so easy to get setup and running that it’s easy to assume that all you need to do is install the plugin, configure your store, add your products and you’re done. Simples right. Well kinda – but not quite. Let’s make something clear – WooCommerce is just a tool, admittedly a very good tool, but still just a tool, designed to help you sell online. As a store owner you have a responsibility both to yourself as the business owner and to your customers to ensure your store is a well oiled machine that keeps ticking over. Installing the plugin is not enough. Here are some of the biggest mistakes we see time and time again in helping WooCommerce store owners get the most out of WooCommerce.

1.) Running out of date copies of WooCommerce.

WooCommerce has a very active release cycle and is updated very regularly. If you’re running and old version of WooCommerce you should really slap yourself on the wrist and update as soon as possible. Security should be very high up your list of priorities when running an eCommerce business. If you’re running old versions of WooCommerce (and WordPress for that matter) you’re leaving yourself and your store vulnerable to all sorts of attacks. A bad security incident may kill your business overnight. There are some legitimate reasons for running old versions of WooCommerce – particularly when it comes to the use of third party plugins and themes. But here’s the thing – if a theme or plugin developer doesn’t update their software to support the latest WooCommerce versions and ensure compatibility with major releases within a short time after release, chances are you don’t want to be using that WooCommerce theme or plugin anyway. The best WooCommerce developers will normally be compatible with major releases even before they are officially released. So if you’re holding off on a big WooCommerce update because your plugins aren’t supported you’ve probably got bigger problems. If you’re just too afraid to make the update read on for more.

2.) Updating WooCommerce on your live store without testing on staging

WordPress fosters a culture of real time updates to plugins via the very easy to use Plugin management system. It’s almost too easy to update plugins in a live environment. But let’s remind ourselves again – you’re using WordPress and WooCommerce to support a business – not a blog or a simple brochure based website. Never, ever update major WooCommerce releases on your live site before first testing thoroughly on a staging site. Yes, this means more work. Yes this will take longer. I know. It’s a royal pain in the ass. But if you’re serious about eCommerce it needs to be done. I’ve seen too many people update WooCommerce in real time and then lose thousands in orders because they didn’t test on staging first. Trust me if you don’t do this chances are high that at some point you will regret it.

3.) Not running a staging site

Closely related to number 2, a staging site has saved my ass so many times it’s not even funny. I wouldn’t contemplate building any eCommerce business without a minimum of 1 staging instance. (and many times a second instance for development tests). WordPress unfortunately doesn’t provide us with a method for creating staging sites out of the box but as WordPress has matured over the past few years many tools have emerged to make it pretty straightforward to do this.

The DIY way – an excellent post from WPBeginner.

WPEngine comes with staging builtin.

The powerhouse of WordPress staging platforms – RAMP.

My personal favourite for most WooCommerce store owners operating small eCommerce stores is to host your store on Siteground and use their staging platform.

4.) Not testing new plugins on staging first

So what’s the benefit of this staging version of your site? Well now you get to dive in and start doing all those updates you’ve been putting off on a near live copy of your store with real data and products. Treat the update process as if it was your live site and give it a seriously good test after every update – both to WordPress itself, WooCommerce and all your plugins. Once you’re 100% happy that your staging site is working correctly go ahead and apply your updates to live. The benefit of having your staging site is that if everything is NOT working correctly, you can now take the time to resolve your issues in a controlled and calm manner, rather than running around like a headless chicken trying to figure out what the hell has gone wrong.

5.) Not running backups

This one is unforgivable. If you’re running an eCommerce business security and backups MUST be top of your list of operational procedures. I don’t care how do you ’em but you should be backing up daily and retaining backups for at least 7 days. Too many people still run WordPress and WooCommerce without backups and they’re running successful stores with thousands of customers. All it takes is one bad security incident to wipe out a business like that. That’s frightening. You’ll find tons of WordPress backup options online but the only one I recommend to customers is VaultPress. It’s an Automattic product that works at scale and works all the time. Plans start at $5 per month which is a steal for what you get.

Starter Child Theme for Captiva released

Using a child theme is the best way to ensure you can easily update our WooCommerce themes when new versions become available. Today we’ve released a child theme for our first WooCommerce theme, Captiva.

For those new to WordPress the concept of child themes can be a bit confusing. You finally find a theme you like and want to make some tweaks to it to personalize it for your requirements. You should just jump in and start making changes to the theme itself right? WRONG! This will cause you a world of pain in the long run. Let’s assume you do go the way of making changes to the theme itself. Let’s then assume that the developer then releases some major fixes a month later – perhaps even fixing some major security bugs that you can’t simply ignore. What then? Your only course of action at that point is something like the following:

  • Backup your current version of the theme that includes your changes
  • Download the latest version with the fixes from the theme developer
  • Merge back in your customizations
  • Re-apply to your live site
  • Pray that everything still works correctly. SPOILER – it probably won’t!

Now imagine having to do that every. single. time. there’s a new release of your favourite theme. Surely there has to be a better, smarter way of keeping your customizations while being able to update the theme painlessly I hear you say?

Enter WordPress Child Themes

WordPress child themes solve the problem scenario outlined above. Simply put, a child theme is a completely separate WordPress theme that allows you to override files in your favourite theme which is known as the parent theme. The child theme inherits all the functionality of it’s parent by simply declaring that it has a parent in the main style.css of the child theme.

A really simple child theme consists of just one file – style.css

Consider a simple example child theme for the Twenty Fourteen theme.

 Theme Name:   Twenty Fourteen Child
 Theme URI:
 Description:  Twenty Fourteen Child Theme
 Author:       John Doe
 Author URI:
 Template:     twentyfourteen
 Version:      1.0.0
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twenty-fourteen-child

@import url("../twentyfourteen/style.css");

/* =Theme customization starts here
-------------------------------------------------------------- */

Simple right? The key line here is the Template: twentyfourteen

This is the magic sauce that tells WordPress that this theme is a child of the twentyfourteen theme. So while our child theme simply has a style.css file, it will actually inherit every single file in the parent theme.

For simple css changes it’s now simply a case of adding your custom css to style.css in the child theme. At load time, WordPress will first load the main styles in the parent theme and then load your child themes CSS file. Now when you need to update the parent theme you can do so safely without having to worry about the messy and time consuming steps we outlined earlier.

Taking child themes a step further with a child functions.php and template overrides

Suppose you wish to extend the parent theme within the child theme with your own custom code – how do we go about doing that? Simples. Just add a functions.php file within your child theme. Your child theme functions.php works a little bit different from the child style.css. It will not override the contents of the parent functions.php – rather, it will extend it. Why is that important? Let’s say for example you have a function in your parent functions.php called get_comments(). If you add a function of the same name to your child functions.php, the parent get_comments() will still be called. On load, WordPress will first execute the parent functions.php file. This can catch out a lot of people when they’re first getting started with child themes. In that scenario where you wish to change or override the parent function you would ideally use WordPress hooks and filters which we’ll explore separately in the future.

Template overrides

Let’s assume you wish to change some markup in the parent header.php. How would we do that in a child theme? The good news is that it’s as simple as copying the parent header.php file into your child theme directory and boom! you’ve got yourself a template override! You can start making changes safely within the child theme straight away. My advice is to keep an eye on your parent theme changelogs with new versions so as to not miss out on any critical fixes to parent templates that you should be bringing into your child templates. Which is why it’s important to only override the templates you really need.

Captiva Child Theme

Our first WooCommerce theme Captiva just passed the 300 sales milestone on themeforest! To celebrate we’re releasing a starter child theme for Captiva which should help you get up and running with a child theme straight away.

As you can imagine with a commercial WooCommerce theme there’s a little bit more to child themes than with a simple WordPress theme. The child theme makes extensive use of wp_enqueue and wp_dequeue to re-order parent stylesheet rendering order to make your child theme as simple as possible to create. In addition there are a number of Visual Composer templates also required to be bundled in your child theme to ensure your child theme renders correctly.

Download Captiva Child Theme 1.0




Sell subscriptions with WooCommerce

One of the best things about WooCommerce it it’s ability to be extended beyond it’s core functionality to cater for lots of other eCommerce scenarios. One of the most common scenarios is subscriptions.

A common misconception is that WooCommerce is just for selling physical products. While it does indeed do that probably better than any other WordPress eCommerce plugin, WooCommerce can handle pretty much any kind of product or service you might wish to sell online through the use of dedicated WooCommerce plugins. Just like WordPress itself, there is a very healthy ecosystem of WooCommerce plugins that we’ve been covering a lot over the past few months.

Subscriptions and WooCommerce

There are a few subscriptions plugins available in the ecosystem for WooCommerce, but the best one I’ve come across to date is the official WooThemes WooCommerce Subscriptions plugin.

This little beauty will let you setup recurring payments for customers in a matter of minutes. Recurring payments can be charged daily, weekly, monthly or annually. You can also add an initial signup fee. It can also be used in combination with the Groups extension to to allow you to define different subscription levels.

How are recurring payments handled?

Anyone who has built their own recurring subscriptions functionality will know what a pain in the behind this can be to get right. Thankfully this plugin integrates seamlessly with Paypal’s subscription engine. While Paypal might not be everyone’s favourite payment gateway, the combination of this plugin and the Paypal subscriptions engine means that anyone can pretty much setup their own Subscriptions business in a few minutes and probably save tens of thousands in custom software development costs. You can always scale up to a more sophisticated platform in the future if you need it. Let’s keep things lean!

A single site license will cost you $199 which is a steal for what you’re getting. Check it out today.