30 May 2012 ~ 26 Comments

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.

 

26 Responses to “Woocommerce Example Site”

  1. 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?

  2. toddz 20 June 2012 at 6:18 pm Permalink

    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.

  3. Andres 14 July 2012 at 9:46 am Permalink

    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…

  4. clackey 14 July 2012 at 3:54 pm Permalink

    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

  5. Andres 15 July 2012 at 4:57 pm Permalink

    Do you know if there are other themes that load faster than woo themes?. maybe you can use other plugins to accelerate the site

  6. ian 19 July 2012 at 9:47 am Permalink

    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…

  7. clackey 19 July 2012 at 2:23 pm Permalink

    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!

  8. deltafactory 12 September 2012 at 3:40 am Permalink

    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.

  9. Louis 19 September 2012 at 6:18 am Permalink

    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

  10. mike 29 October 2012 at 8:46 am Permalink

    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….

  11. Daniel 21 November 2012 at 8:12 am Permalink

    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.

  12. Guy 7 December 2012 at 6:24 pm Permalink

    Hi

    thank you for the information. Any chance you can share how you added in the additional navigation element above the logo area?

    • Guy 7 December 2012 at 6:26 pm Permalink

      As always I figured it out straight after asking!

      • clackey 9 December 2012 at 1:10 pm Permalink

        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

  13. Leon 9 December 2012 at 12:14 pm Permalink

    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.)?

    • clackey 9 December 2012 at 1:08 pm Permalink

      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!

      • Leon 10 December 2012 at 7:03 am Permalink

        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!

  14. Affiliate Marketer 17 January 2013 at 4:03 am Permalink

    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 :(

  15. maryland seo 15 February 2013 at 3:43 pm Permalink

    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..

    • clackey 15 February 2013 at 10:14 pm Permalink

      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.

  16. Brad 22 February 2013 at 4:37 pm Permalink

    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!

    • Cassidy Lackey 26 February 2013 at 9:26 pm Permalink

      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.

  17. Nirmal 26 February 2013 at 11:10 am Permalink

    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.

    • Cassidy Lackey 26 February 2013 at 9:23 pm Permalink

      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!

  18. demla 21 March 2013 at 9:26 am Permalink

    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.

    • Cassidy Lackey 9 April 2013 at 1:15 pm Permalink

      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


Leave a Reply