Home » woocommerce

Tag: woocommerce

Spiritual Software Engineer

Improve your website performance by separating concerns

The problem

I have a slow WordPress site that will resist all optimization attempts.

What is the most common advice you get for speeding up a WordPress site? 

  • remove unused plugins
  • update all the software
  • use the latest version of PHP 7
  • install a caching plugin

This list is all good advice and things to reach for first, but what do you do when your WordPress install still takes 13 seconds to load a page, even after all the optimization is done?

In my case, the problem was that the website was trying to do too many things. And the optimizations above did not help much. 

Here is what I mean:

  • the website had multi-language support
  • contact forms done with Contact Form 7
  • subscribe popups using NinjaPopus
  • animated sliders on the homepage
  • hundreds of blog posts
  • a WooCommerce store 

Because of how WordPress works, all items were loaded, regardless of the page you were looking at. The multi-language setup was not working well with the caching system. And I could not uninstall any of the plugins because all of them were needed somewhere. WordPress does not do selective plugin loading.

It drove me crazy that I would need to wait 13 seconds to open up a blog post that would request hundreds of resources (CSS and JS) that it did not need. It was a page with one image and some text but a truckload of “invisible add-ons.” This page should load in milliseconds!

Some have suggested writing yet another plugin to remove the unnecessary scripts from the pages that don’t use them. I understand how that would improve the loading time, but on principle, I don’t want to have code that adds stuff, so then I can immediately remove it a few microseconds later. That’s just bad practice

I came up with the solution to split the site into two: one for the simple blog and one for the store. I also dropped multi-language support. 

The Pros

  1. The blog is made up of static pages – so you can deploy very effective and aggressive caching.
  2. I could also split the plugins – there was no need for the blog to load all the WooCommerce code.
  3. The store site could focus better on selling and keeping the buying experience smooth. 
  4. The improvement in performance was dramatic, as I could now optimize each part independently, without conflicts
  5. A bonus side effect is that I can now work on the blog and not worry that the store will be affected and vice-versa.

The Cons

  1. There are now two websites to maintain and think about.
  2. They need to look the same in design, so they feel part of a whole.
  3. The search function is now limited – it either returns post or products – depending on where you are using it.
  4. Tracking the user activity is more complicated.
  5. Adding multi-language support means adding a new site for each language – which does not make business sense right now.

There is an obvious trade-off here. There are more pieces to take care of, but you get to optimize each one individually and fine-tune them for their specific purpose. 

In Conclusion 

If the common performance tunning is not doing much for you, maybe the structure you have is too complex, and your website would benefit from being spit up into smaller but more effective pieces. Of course, this effort only makes sense if having fast loading pages is essential to your business. 

Shopify – The cost of free

I am a long time user of WordPress and WooCommerce as an eCommerce platform. 

The reasons I got into using those two are likely the same as for everyone: both WooComerce and WordPress are free, so this leaves me with more money for marketing. And a secondary reason: both WooCommerce and WordPress are open-source, which means you can customize them to do pretty much anything you want. 

So what is my conclusion after over five years of using this combo? 

It is not really “free!”

There is the obvious cost of having to pay for hosting. And if you want to do anything useful with WooCommerce, you need to add up extensions and plugins that are not free. The same goes for professional-grade plugins that you will install into the main WordPress site. The total costs with software add to about $50/mo, and to that, you need to add your hosting, which for serious stores it will not be a “starter plan.”

But there is a hidden cost that I don’t see many people talk about. And that is the time and focus you need to put into setting up WordPress and WooCommerce and then maintaining it to make sure it remains secure and up to date. And when (not if) something breaks down, it’s up to you to fix it. 

As a software developer, I am OK with fiddling with tech, fixing bugs, diving deep into the code. But as I transition into being and thinking like an entrepreneur, I notice that instead of working on my business, on my marketing, on coming up with new ways to find and support my target audience, I spend a lot of time tinkering with code. And while it is fun, it does not scale. 

The web is changing at an ever-increasing rate. Sometimes just trying to keep up eats a lot of my time. And the thing with “time” is that it is a non-renewable resource. You cannot ever get a refund on a time you’ve spent doing something. 

So what do you want to do? Spend time learning how to put together the free tools and fix them when they get broken? Or would you instead spend time creating content, products or doing marketing, or simply taking some time off to spend with the family? 

For all these reasons, I am now looking into and recommending the Shopify solution. 

Shopify is right for you if:

  • you are serious about your store, so you will generate sales
  • you don’t have any tech skills, and you don’t want to spend time learning tech
  • you don’t want to worry about security, backups, performance, or maintenance 
  • you value time more than money

If you know of another eStore platform that saves you time, let me know in the comments below. I’d also like to know your experience with WooCommerce as it relates to this article.

The Challenges of an WordPress Online Store

Having an online store is a good idea. It allows you to make revenue from your website and your offering. That is obvious.

What is not so obvious is that some challenges come with it :).

I believe in being prepared! So, if you’re looking to start an online store, or to improve the one you already have, read on!

This article will focus mostly on WordPress powered websites and add some general principles as well.

Shopping cart or no shopping cart?

It depends. I much prefer the experience of a one-click purchase. And in some cases that is precisely what you want to offer to your customers. When you have a lot of products in your offer, and it makes sense for people to buy more than one product at a time (like three books for example), then you need to use a shopping cart. For WordPress, I recommend WooCommerce, and some custom work on top of that to make it more user-friendly.

Coupon or no coupon?

Coupons are an excellent way to reward loyalty and to get attention for your promotion. A one-click experience does not lend itself well to using a coupon. There are other tools in this case, like custom links. But a shopping cart (like WooCommerce) can easily use coupons. Just make it obvious where to expect a coupon code. The default user interface is sometimes confusing for people.

Guest checkout?

In most shopping experiences, you are required to create an account before you can place an order. And there is a good reason for that. It allows for later access to your purchase history and the downloadable files you may have lost.

But sometimes creating an account can be seen as too complicated and unnecessary. I prefer this method of purchase. If guest checkout is essential for you, make sure the tool you are using allows for it. Again I have to recommend WooCommerce as they provide for this feature.

Keep the conversation going

Depending on the kind of business that you have and your offer, it may be a good idea to keep the conversation going with your customers or to hold their hand as they discover your product. To allow them to grow by making a more advanced offer, and, why not, to learn from them. The tools to use in this case is WooCommerce integrated with MailChimp. I am personally not happy with what is on the market today, so I have had to create my own plugin that would add specific tags for specific products. This approach allows me to segment the audience or to trigger campaigns based on the product that was purchased.

Also beware, that for bigger stores, the official MailChimp plugin does not work anymore as you would expect. There are a lot of timeouts and missed notifications. Especially true for when you have a significant influx of orders (for example you’ve just sent an email blast to your audience).

Provide support

Providing support should be common sense, but not everyone is doing this right. Your customers need a reliable way to ask for assistance.

I used to think that this would be too much work. But in fact, it is an excellent way to learn about your audience, what they need, what they like, and what is broken with your sales or delivery process. Do not ignore the support requests :). The “Contact Form 7” is an excellent plugin to use for this.

The Refund Policy

Buying things online is risky. Your order customers trust you, but the new ones don’t know you. To me, it makes total sense to make it risk-free for them and offer a full refund policy. Yes, some will abuse it. But for every abuser, there will be more people who end up trusting you more and making the purchase. The refund policy is also a strong statement of confidence in your products or services. Yes, they are that good!

And I agree, in some cases, a partial refund makes more sense. And in others, it is OK to offer no refund if the customer had plenty of chance to change their mind and did not. Like selling tickets for an event, and someone wanting to cancel the day before. In these cases, you have to make it crystal clear in the purchase process what the refund policy is and when it expires.

International clients

I still struggle with this one.

You may discover that you have a big audience in a country that speaks a different language. Say, French. You invest in the resources and process to translate your products and sales process into French to help your audience get to our product. But what you also need to be careful about is providing support in the same language. If the product is in French, and the purchase process is in French, the support cannot be in English. To me, that would not feel genuine. Like you did not go all the way with your offer, and you stopped right after the sale.

If I cannot offer support in French, I prefer to keep the sales process in English. This way, those who buy the French product will know that that is the only French part about it, just the product itself. But the shopping experience and support will have to be in English.

As I’ve said, I still struggle with this, and I cannot say I have found a solution that I am delighted with. As tools, for WordPress, I am using the PolyLang plugin.

The Mobile Screen Experience

Have a look at your analytics data, and you will likely notice that the mobile users are a big chunk, if not the most significant piece of your audience. Your store needs to be mobile-friendly. And again, I have to recommend WooCommerce here, but with some custom work to make it even more usable on the small screens.

Order fulfillment

Don’t forget about the second half of the shopping experience. Don’t stop at just getting paid :). Make sure your customers can get to their files.

You may have to use different tools for different products. Small files can be sent as attachments. For videos, you may be better of emailing links to a platform where the video is hosted (YouTube, Vimeo, Wistia). And for huge files, there are yet other tools to help, like Amazon S3 services.

Use this information to decide what kind of shopping experience you want to create and what tools you should use. And if you struggle with some challenges that I didn’t write about, let me know in the comments below.

Facebook ads? Love them or hate them?

Let me start by saying that I am not a big fan of ads in general or social media for that matter. In fact, I used to dislike the word “marketing” altogether. It seemed that marketing would be something that only con-artists would do to get a sale :).

But that was because of all of my bad experiences with ads and marketing in the past. However, it turns out that there are good ads and good marketing!

Here is a definition of marketing that I like (probably by Seth Godin):

“Marketing is generously solving other people’s problems”.

So marketing in this sense is serving not only selling.

And out of this definition follows a good ad. A good ad is one that is more of a training than a sales pitch. It adds value to your life just because you paid attention to it. You have learned something and if you are ready and willing to go deeper, then yes, you can buy the product, service or training.

I cannot say that I am an expert with Facebook ads, but I have run ad campaigns on Facebook for a couple of years so I have learned a thing or two.

What I like best about them is that you can really focus on your target audience. That is very useful when you are looking to reach people who are interested in what you have to share.

The next thing I like is the format. At least on Facebook, it feels organic and if crafted correctly it looks like a regular post and not like an ad.

Next is the way you can control your budgets so you have a clear picture of your spending.

There is one thing that I don’t like, however. That is tracking the results.

Maybe I am still doing something wrong, and I still have to fine tune my processes, but I have not yet figured out a reliable way to determine which ad is performing better, especially when it comes to converting into sales.

The setup I have worked most with is a WordPress site with a WooCommerce store. On top of that, I have used the “Pixel Your Site” plugin to integrate all of it with Facebook.

If you know of a good resource about conversion tracking with the Facebook pixel, drop a link in the comments below!

Why use Facebook ads?

After testing this for some time, it is clear to me that Facebook ads are a good way to reach new people, or just to send reminders to your current audience. Ideally, new prospects would find you through word of mouth. What you have to say is so remarkable that it has to be shared with other people! But when that does not happen, you can test out ads and look for a new audience. (I am assuming of course that what you have to say or offer is indeed really good, but you did not find the right audience yet).