Woocommerce Example Site
I’m a big fan of tools such as WordPress that enable entrepreneurs. I was excited to learn about Woocommerce, an updated version of the popular WordPress ecommerce plugin by Jigoshop. It just so happened that a few friends needed a new site for their massage candle business so I offered to rebuild the site using WordPress, Woocommerce and a slew of plugins. My goal was to get this new site live within 30 days working an “hour-or-so” per day.
The Basics
I’m not a developer, designer nor a system admin but I know enough of each to get me in trouble. In order to stretch myself further I decided to get this out on the amazon cloud. You can read about my challenges with the Bitnami WordPress AMI. While this added a bit of complexity to the solution, I learned a great deal about the cloud, WordPress AMIs, etc..
I decided to leverage a WordPress multisite install that was already using for several other sites. Looking back, I should have probably installed a separate WordPress instance for this site, just to keep it clean and minimize the complexity. Also not all plugins support multi-site WP installs so that created an additional challenge.
After installing and configuring a few themes I ultimately landed on the Shelflife Woocommerce theme with a blue background.
Lessons Learned
- Take some time to understand the taxonomy of woocommerce – products, categories, attributes, variations, etc… This can become very complex if you have products with many options. One product originally planned to sell had 3 options with 14 variations each – over 2700 separate skus. Ultimately I decided to simplify that product.
- Do some research upfront to locate plugins for all the features you need. It can be a bit maddening to get 95% into the product and realize there is no plugin to handle a key feature. Then you’ll need to find a developer to create it.
- Make sure the site speed is good before you start adding all your products, posts, etc.. I assumed that I could go back and optimize stuff later only to find out its much more difficult at the end of the project. Since the site is too slow for my taste, I’ll be basically rebuilding it on a new wordpress ami.
- Keep all your featured images the same aspect ratio. This ensures that the images for product lists all line up appropriately.
WordPress Plugins Utilized
Store Locator Plus – I needed to support a retail locator for several hundred outlets and Store Locator Plus fit the bill. I ultimately upgraded to the pro pack for $30 in save myself time by uploading hundreds of stores from a CSV file.
Google XML Sitemaps with MultiSite support – Submitting every page to the Google search engine is important so I used this Google XML sitemap generator and uploaded it into google webmaster.
Peter’s Login Redirect – One shortcoming of WordPress and Woocommerce themes are the logout and password resend features that send you back to the main wordpress login and password resend pages. This simple plugin redirects the user to a specific page on logout so I just redirect them back to the main page of the site. I still need to find a solution for the password resend.
W3 Total Cache – The new site was dog slow – and it still is. I used the popular W3 Total Cache plugin to help a bit. Unfortunately, the woocommerce engine isn’t too “cache friendly” so it didn’t help much. Ultimately I have another solution to speed things up.
BC Forms – One goal for the new site was to automate some of the back-end processes. While I’m not a big fan of Big Contacts, the team was already using it so I needed the contact forms to integrate directly into BC. This plugin has some fairly significant issues but I was able to make it work eventually.
Woocommerce – Obviously I needed to utilize an commerce plugin to create a store based on WordPress. WP-Commerce and Jigoshop are two other options. I’ve tried neither and both have mixed reviews.
Woocommerce Paypal Pro Gateway – I prefer to use paypal for all my business ventures and this was no exception. The Woocomemrce Paypal Pro gateway served all my needs and the integration was fairly simple.
WooCommerce Print Invoice/Packing list – Our fulfillment partner preferred print an invoice directly form our admin and send it with the order. I found this nifty plugin that handled the task.
WooCommerce Wholesale Pricing – As well direct-to-consumer sales, the site is also utilized by retailers who purchase products at wholesale prices. This plugin enabled me to create wholesale pricing for each product and product variation.
WooCommerce Google Product Feed – As of today I haven’t been able to get this to work but supposedly it’ll allow me to create an XML feed of the products for the Google marketplace.
Configure SMTP – Amazon cloud servers typically block all email from sending directly off the server. Therefore, I needed an SMTP plugin to send WordPress email through another server. Initially I set up Amazon Simple Email Send (SES) with this plugin but oddly enough the Woocommerce emails wouldn’t go through it. I attempted to solve via Woo and the Configure SMTP developer but they both pointed me to Amazon as the issue. Ultimately I just used GoDaddy as the SMTP relay.
Contact Form 7 – One of the best “contact us” forms but it might have been a bit overkill since I used BC Forms for my more complex integration with Big Contacts.
Simple 301 Redirects – Moving from an older established, non-wordpress site with hundreds of links requires redirects to ensure that the old pages redirect to the new page on the new site. Ultimately these should probably reside in the htaccess (or nginx equivalent) but this was a quick and dirty solution.
Simplr User Registration Form Plus – To support the wholesale purchase accounts I needed a simple solution to create and activate these accounts. I uncovered an issue with the standard wordpress user account creation, email send and activation process. Clicking the link in the activation email just displayed a blank screen. This may have been an issue with the theme but I located this simple plugin that allowed users to create their own standard account. Then just change the role of the account on the back-end.
WP Super FAQ – I needed a good FAQ plugin and this did the trick!
Update on 9/13/12
- I finally got the abodycandle.com site moved to a new Amazon Machine Instance (AMI) optimized for WordPress using nginx. This is our home-grown AMI that we’ll be making available through RipCloud after further testing. The site is now about 4x faster on a micro instance than it was on the bitnami small instance. Also saved me about $50/mo.
Check out the latest update to my Woocommerce journey with my WooCommerce v2.0 post.

Hi Cassidy,
Interesting to read your experience with WooCommerce. We just moved our store to WordPress & WooCommerce and are so very happy with it! We’re looking forward to implementing the Google Product feed – did you manage to get yours working?
Nice site. The customer Lost-Password link goes to wp page, which you probably don’t want. Check out Theme My Login for better handling of that.
why do you think the site is slow??. Do you think is the woocommerce plugin and the woo themes ??. I´ve heard they are slow…
Yes, it does seem a bit slow overall. I suspect speed wasn’t one of the primary goals when the system was architected. It also seems as though woo requires cookies for all pages so caching doesn’t work so well.
Cassidy
Do you know if there are other themes that load faster than woo themes?. maybe you can use other plugins to accelerate the site
Hey Cassidy,
I’m using dynamic pricing extension for woocommerce to implement discounts for buying a certain amount. I set up special wholesale versions of products (5 unit lots for Product X at Y% discount, etc.)
This works pretty well. But what I also want is the ability to set a minimum purchase amount for wholesale customers. Does the wholesale pricing extension do that?
Ian
bringing woocommerce to japan…
Unfortunately, the wholesale plugin doesn’t support a minimum order amount. I’d like this as well but the developer has been unresponsive so far.
Another challenge is that the dynamic pricing plugin doesn’t support the wholesale pricing of the wholesale pricing plugin. So, you can’t actually give bulk discounts on wholesale prices.
I’ve requested quotes from both developers (as well as other WP developers) for the costs to support this but nobody has stepped up to the plate to do it.
Let me know if you get it solved!
Since the direct answer to this appears to be nowhere online, let me say:
The reason Amazon SES will not send WooCommerce emails appears to be the inclusion of data uri’s in the email template.
https://forums.aws.amazon.com/thread.jspa?threadID=92579
Please read the above post, specifically the response from the official Amazon poster.
Hi Cassidy,
Thanks for this post, very informative. Much appreciated + bookmarked.
I mentioned Jesus Christ earlier on in another post, at Wootheme general ideas — and boom — minutes later… I landed here and was please to read “about you”. -:) Great coincidence
http://ideas.woothemes.com/forums/72423-general-ideas-/suggestions/2382656-edit-certain-woocommerce-text-within-theme-options
Louis
did you get the google xml feed working?
I’d like to see a demo before spending yet another $50 for what should be a default feature….
We use woo commerce with WordPress. Very happy. About to implement wholesale and use inventory functions. I am thinking of manually doing the wholesale orders for our customers rather than risk their frustration in the early going. I use numerous plugins for store locator, video etc.
I wish I coukd rearrange elements of website as if it were a page layout program, but I now realize shopping sites are complex.
Hi
thank you for the information. Any chance you can share how you added in the additional navigation element above the logo area?
As always I figured it out straight after asking!
Ya, this is just the “top” menu which can be set from the appearance>menus page. While it is at the top of the page it isn’t quite as prominent as the the main menu so I use it for access to stuff like MyAccount, logout, etc..
Thanks again!
Cassidy
Hi Cassidy,
Thanks for sharing your journey and plugins used with WooCommerce so far!
With the wholesale solution you ended up going with, are you able to set multiple wholesale prices by user? ie: Tshirt $10 (wholesale: $8 for user A, $5 for user B, etc.)?
Leon – thanks for the feedback. The wholesale pricing plugin just allows one wholesale price per product so it wouldn’t work for that scenario. However I did also install the dynamic pricing plugin that appears to do just that. I can set a price within a product for a specific role.
Thanks again!
Great news. I’ll look into the dynamic pricing extension more – sounds like it will allow us to display different prices on a per user basis the way we’re intending. Thank you!
I just started using woocommerce to create a website to sell a couple virtual products. MY big mistake was thinking that it came with all the features I needed and then ended up realizing that I needed to spend $100 to get the plugin that had the features I wanted. That’s where they get you
Nice post..I am building woocommerce site with various plug ins and 3rd party theme..so far it is very straight forward, but few minor bugs and function take some time..I wonder any tips on increasing performance? I am trying to using W3 Total Cache with CDN..
Thanks, maryland seo. Personally I’m using an AWS microinstance running NGINX but it is slow from time-to-time. I’ve had limited success with W3 and woocommerce but I’m no expert in caching so the configuration is a bit challenging. Woocommerce is a bit of a hog so you’ll likely need to beef up your server. I’m afraid this is just one of the drawbacks of using a big framework such as WP+WOO.
Hi Cassidy,
Any tips for speeding up a woocommerce site with a few thousand items in it? I see you didn’t have much luck with W3. I have the best server configuration blue host has to offer so I’m wondering what to do next to get some better speeds!
Thanks!
Ya, I can see why woo might begin to choke on thousands of items. IMO it is really not a great option for large ecommerce engines unless you plan on buying really beefy servers. I’d suggest you either find someone who is an expert wordpress optimization (DB and server) or consider moving to an enterprise level hosting provider like wpengine.com. It wont be cheap but I bet someone there can help speed things up.
Hi,
I am facing one problem with WooCommerce. Images used with products having dimensions 300X600 and its not creating thumbnails appropriately. Did you have any solution for that?
Thanks in advance.
Have you tried resizing a few and uploading to see if that resolves the thumbnail issue? I can’t see why the original size would be causing a thumbnail resizing issue. I resized all my images to 400×300 just so they’d all be the same thumbnails on the main page as well. Sorry I can’t help more than this!
Hi Cassidy,
Thanks for writing this useful post about woocommerce.
After this Post, I tried woocommerce to start my own ecommerce venture for local community.
However as per my trials till now, I found difficulty in getting these features in woocommerce:
1. When many orders received:
I don’t have free plugin to export those orders for backend use.
2.When any order is cancelled from admin, after confirmation from customer phone call:
Inventory is not automatically updated, so we need to manually update inventory for that Item or we need to keep manage stock flag :OFF.
Hence due to these missing above features,its difficult to adopt woocommerce as platform for local startup.
So can I get your few comments on:
How you synchronize your woocommerce product and order updates with your backend physical data ?
Thanks in advance for helping so many others who got the same issue.
Thanks for the feedback, Demia. Currently we don’t have any synchronization with inventory since this small business really builds the product as needed. We have attempted to synchronize orders with Quickbooks pro using the woocommerce plugin from 61 Extensions but were never able to make that work reliably so we basically gave up on it.
This is the challenge I’ve found with Woocommerce, any wordpress ecommerce package, or any “off the shelf” ecommerce package. It’ll get you a long way for a very low cost but it’ll never do 100% of what everyone needs out of the box. So, you need to be prepared to pay someone to develop the last 5%-10% or just do without it.
Cassidy