Rebuild Existing Custom WooCommerce Store

The current WooCommerce store could not be updated(disabled) due to the nature of how the e-commerce store was developed. I needed to rebuild the store and implement the current code onto the new platform, but at the same time make the new WooCommerce setup update safe.

This was a nice challenging project. The previous developers build the front-end view and functionality completely from custom JavaScript code. Each and every page was rendered with Javascript so no current WooCommerce functionality or template files were used. WooCommerce was only used as a content management platform to host(upload) the products, process the orders, manage the payment and shipping features.

My duties where.:

  • Build a new WooCommerce platform that can be updated.
  • Then migrate all the current JavaScript functionality(15000 – 20000 lines) from the previous version into the WooCommerce templates. Basically, maintain all the functionality, but use the WooCommerce system to process everything. WooCommerce needed to be customized according to the JavaScript functionality and still retain its ability to be updated when a new version was released.
  • All the Javascript code need to be adjusted, mostly re-coded and adjusted(refactored). One problem was that all the ids of all the products were hardcoded in the HTML files and not dynamically pulled from the database. Not only were there hundreds of products, but variations also with attribute ALL HARDCODED. Everything needed to be readjusted to be pulled in dynamically from the database.
  • The theme needed to be built from scratch, using the Genesis Framework and required customization.
  • All products need to be exported out of the old system and reimported into the new system. This was not easy, because everything needs to be manually ported. The previous version of the site was sitting on WordPress 2.0-something and the latest version of WordPress was on 4.0-something. So there was no plugin that was compatible with that old version of WordPress to be able to export the data. WordPress does not store its data in a few tables but its pieces of data spread over many tables. It can get very complex to match up all the references between the data tables.

It was a nice challenge and everything worked out good in the end. WordPress, WooCommerce, and all the plugins could be updated without any problems and the flow and functionality of the site were retained.

This task took about +- 3 months of work to complete.


Extra Work:

  • Develop new custom Email Templates for WooCommerce. For example New Orders, Order Complete etc.
  • Added extra custom features, functionality and some more products.

Click on the images to enlarge.

Andy Hogg

Excellent effort and work on a tricky project. Clear communication.

Project Rating:

Review Proof
Posted in projects

Water Contaminate Report App build for Web-based and Android platform using React & NodeJS

Front-end Description I decided that React(my ultimate new platform of choice) would be a perfect fit for this project as a lot of API calls would need to be processed and we are going to render different screens based on user interaction. A more refined app-state was also required to keep track of the current…
Read More
single page donations app

Single Page Application – Donate to a good cause with a Payment Gateway and Email Transactions.

Front-End Description I decided to build this Single Page Application, with vanilla JavaScript ES5 & ES6 syntax, with a custom self-contained STATE. A STATE is like a memory place-holder for when you need to store data that you want to reuse. It also keeps track of login sessions. Most importantly is to keep track of…
Read More
JavaScript App Desktop API

Small JavaScript APP, VIN number lookup for Proficient Auto Transport

There is no GO BIG or GO HOME here. I also enjoy working on small projects and cater to smaller businesses! Not just that, it is because that small client of today can be a BIG client down the road…#facts   Technical Details. Build a small basic JavaScript App that connects to an external API…
Read More