We’ve moved our storefront from Jigoshop to WooCommerce

Hey there WordPress e-Commerce community, we’ve completed our in-house storefront migration from Jigoshop to WooCommerce and other than taking a lot longer to complete than initially planned it’s done without a hitch!

We are now proudly running WooCommere on our storefront for the sale and distribution of our free and Premium WordPress e-Commerce Plugins!

A little bit of history

We cut our teeth on WordPress e-Commerce store migrations back in 2013 moving our storefront from WP e-Commerce to Jigoshop, Product, Coupons and Orders came over but we screwed up download permissions which meant customers could see their purchase but couldn’t download Plugins… *head smack*

Fast forward a year and we’re stuck with an e-Commerce platform that we had hard-coded changes into Jigoshop core making updates harder and harder to maintain. In hindsight we should have never, ever, ever made core Plugin changes and instead raised queries with the Jigoshop team so we could maintain custom WordPress Plugins to extend Jigoshop.

From July 2014 plans were drawn up, we were moving to WooCommerce. We announced this in our end of year address but had no idea what was involved.

Migrating to WooCommerce

While the explosion of Plugin development riding the popularity wave of WooTheme’s WooCommerce has produced hundreds, if not thousands, of e-Commerce extensions store migration between platforms is a niche point with few options available, in our case none supported migrating Order download authorisations which is critical to our store needs as a Plugin distributor.

We had two options:

  1. use the Jigoshop to WooCommerce extension to migrate our Products over to WooCommerce and start over with a fresh WooCommerce instance with no existing Orders, or
  2. build a custom WordPress Plugin to take all that is Jigoshop and paint it WooCommerce

After all the hard work generating thousands of Orders, developing our Plugin distribution platform to extend Jigoshop to deliver Plugin updates it was clear we weren’t starting over. Had we gone with a fresh WooCommerce instance we would have been killed resource wise re-building existing Orders and download permissions for over 10,000+ existing Orders, our customer base would have been pissed. We needed to migrate everything and make sure it worked.

We teamed up with Gaetan Ouandja in November 2014 and went to work on migrating each detail from Jigoshop to WooCommerce on a per feature basis, starting small with basic Product details that used simple custom Post meta (e.g. Price, Sale Price, Sale Price Dates) before moving onto Custom Term Taxonomies (e.g. Product Types) and when we were confident moving onto the heavy stuff (Jigoshop custom tables, Product Attributes, Order Items, Download authorisations).

The migrator Plugin was built so that it could run in the background while the new WooCommerce storefront continued to operate and could accept new Orders, another important aspect of the Plugin was that it would continue running as a server process even if the browser session timed out. Having the migration process running as a server process was a life saver as we regularly hit browser time outs running some migration processes and had the process ceased midway through a step it would poison that portion of the WordPress database and require us to take the storefront down while we restore the backup database.

Migration Day

Ater testing and testing and testing on staging sites and local development instances of our storefront it finally was time to to do it on the live site. After a full backup and short notice of scheduled maintenance it was go time.

As of midnight the Jigoshop to WooCommerce migrator has successfully migrated:

  • 10,000+ Orders
  • 105,000+ Order Items
  • 10,000+ download permissions assigned to Orders
  • 50+ Products with Variations, electronic download files assigned to both Simple and Variable Product Types
  • 50+ Coupons with usage

To say this has been hard work is an understatement but it was so worth it!

The future

We will add a friendly wizard UI as well as an advanced view to the migration Plugin with a goal to distribute this Plugin as a free basic offering on the WordPress Plugins repository and as a Premium Plugin in the next quarter.

For our storefront we will continue to tweak our VLShop Theme to optimise it for WooCommerce as it was originally developed for Jigoshop. With the move to WooCommerce we can offer a better experience to customers by enabling PDF invoicing, multiple currency support, affiliate opportunities, the list goes on… :)

[Plugin update] Store Exporter Deluxe 1.9.3 for WooCommerce

Hi WooCommerce store owners, the 1.9.3 Plugin update is a minor Plugin release with export to SFTP support, new Order filters, fixes for price formatting in the latest WooCommerce release and UTF-8 encoding formats. If you are a non-English store owner or using UTF-8 encoding this is a recommended upgrade.

In this release you can now:

  • Send scheduled exports via SFTP (FTP over SSH File Transfer Protocol)
  • Filter Orders by Payment Gateway, Shipping Method
  • Show/hide export action buttons from the Orders screen
  • Control the number of recent scheduled exports that show on the WordPress Dashboard
  • Most filters now support multiple options (e.g. Filter Orders by multiple Billing Countries, not just one)
  • Scheduled exports will be paused if we detect a cloned WordPress installation (e.g. WP-Engine’s staging environments)

Here’s the full changelog broken down.

Added

  • Added: SFTP protocol for scheduled exports
  • Added: Filter to override path to sys_get_temp_dir()
  • Added: Filter Orders by Payment Gateway
  • Added: Payment Gateway count to Filter Orders by Payment Gateway
  • Added: Configure panel to Recent Scheduled Exports widget on WordPress Dashboard
  • Added: Number of recent scheduled exports form field to Dashboard widget
  • Added: Disable scheduled exports on duplicate site or staging site detection
  • Added: Orders Screen section to Settings screen
  • Added: Actions display fields to show/hide export actions on Orders screen
  • Added: Filter Orders by Shipping Method

Fixed

  • Fixed: Saving Default e-mail subject within Settings
  • Fixed: Encoding issue affecting UTF-8 in PHPExcel formats
  • Fixed: Currency symbol beside price fields in latest WooCommerce
  • Fixed: Strip HTML from price fields in latest WooCommerce

Changed

  • Changed: Filter Orders by Billing Country supports multple options
  • Changed: Filter Orders by Order Status supports multiple options
  • Changed: Filter Products by Product Type supports multiple exports
  • Changed: Hide Filter Products by Brand if Brands are unavailable
  • Changed: Filter Orders by Order Status supports multple options
  • Changed: Filter Orders by User Role supports multiple options
  • Changed: Filter Products by Product Type supports multiple options
  • Changed: Filter Products by Product Status supports multiple options
  • Changed: Increased maxlength on Once every x minutes interval

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.

What’s ahead?

Now that PHPExcel is baked in I’ll be keeping an eye out for export issues arising from the new file generation engine. Development focus for the 1.9 series are:

  • multiple scheduled export support
  • [included in 1.9.2] scheduled export frequency scheduling (e.g. run export A at 5:00pm each Friday)
  • export an XML feed in RSS 2.0 format compatible with Google Merchant (we’re getting there)

Happy exporting!

 

[Plugin update] Store Exporter Deluxe 1.9.2 for WooCommerce

Hi WooCommerce store owners, the 1.9.2 Plugin update is a minor Plugin release with improvements to our scheduled exports scheduling support, there’s WooCommerce Bookings support and fixed export filenames for FTP exports.

In this release you can now:

  • schedule exports to run daily/weekly/monthly/custom frequency
  • schedule exports to begin exporting at a given date and time (e.g. 31/03/2015 at 23:59)
  • use the Field Editor to override XML nodes
  • export WooCommerce Bookings details within Order exports
  • send scheduled exports to FTP with a fixed export filename
  • export Subscriptions from large stores using a fallback export engine with Volume Limit and Volume Offset support

Here’s the full changelog broken down.

Added

  • Added: Order Items Booking ID to Orders export
  • Added: Order Items Booking Start Date to Orders export
  • Added: Order Items Booking End Date to Orders export
  • Added: Scheduling section for Scheduled Exports
  • Added: Export daily/weekly/monthly to Scheduling section
  • Added: Commence exports from now option to Scheduling section
  • Added: Commence exports from date option to Scheduling section
  • Added: Override XML nodes via Field Editor for exports
  • Added: Notice to indicate where is_large_store flag is set within Subscriptions
  • Added: WordPress filter to override Order Shipping ID
  • Added: Time support to scheduling exports
  • Added: Support for custom Product Add-ons in Orders
  • Added: Fixed filename support for Export to FTP scheduled exports

Fixed

  • Fixed: Variable date ranges in Order exports
  • Fixed: Leading 0’s being stripped from numbers in CSV, XLS, XLSX
  • Fixed: Subscriptions exports for stores with the is_large_store flag set
  • Fixed: Links to WordPress Plugins Search using Term filter instead of Tag

Changed

  • Changed: Moved “Once every (x) minutes) to Scheduling section
  • Changed: Hide Add New button on Export screen
  • Changed: Error styling within Recent Scheduled Exports widget on WordPress Dashboard

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.

What’s ahead?

Now that PHPExcel is baked in I’ll be keeping an eye out for export issues arising from the new file generation engine. Development focus for the 1.9 series are:

  • multiple scheduled export support
  • [included in 1.9.2] scheduled export frequency scheduling (e.g. run export A at 5:00pm each Friday)
  • export an XML feed in RSS 2.0 format compatible with Google Merchant (we’re getting there but it didn’t make it into 1.9)

Happy exporting!

[Plugin update] Store Exporter Deluxe 1.9.1 for WooCommerce

Hi WooCommerce store owners, the 1.9.1 Plugin update is a minor Plugin release with additional filters, some new export fields and various fixes, it is a recommended upgrade. In this release we’ve added a shutdown notice that explains why the exporter fails due to memory/timeout/permission issues instead of the famous “white screen”, there’s also fixes affecting our integration of PHPExcel for generating Excel files and suppressing warning notices that can affect exports for some users.

In this release you can now:

  • Include the Booking Date against Order Items from WooCommerce Bookings
  • Export XLSX reports from the Edit Orders screen
  • Generate scheduled exports of Orders with Billing/Shipping Country and by Product filters
  • Added a new Order Total Tax export field for Orders
  • Added a new Order Tax Percentage export field for Orders

Here’s the full changelog broken down.

Added

  • Added: Filter Orders by Billing Country to scheduled export
  • Added: Filter Orders by Shipping Country to scheduled export
  • Added: Filter Orders by Product to scheduled export
  • Added: Notice when fatal error is encountered from memory/timeout
  • Added: WooCommerce Bookings integration for Booking Date in Orders export
  • Added: Booking to Filter Products by Product Type in Products export
  • Added: Booking Has Persons to Products export
  • Added: Booking Has Resources to Products export
  • Added: Booking Base Price to Products export
  • Added: Booking Block Price to Products export
  • Added: Booking Display Price to Products export
  • Added: Booking Requires Confirmation to Products export
  • Added: Booking Can Be Cancelled to Products export
  • Added: Export to XLSX to Orders screen
  • Added: Order Total Tax to Orders export
  • Added: Order Tax Percentage to Orders export

Fixed

  • Fixed: Filter Orders by Coupon not working
  • Fixed: Subscriptions export not working
  • Fixed: Default empty Order Items Type to Line Item for CRON Order exports
  • Fixed: Conflict of XML class name
  • Fixed: Order Items: Stock missing in individual Order Items Formatting of Orders export
  • Fixed: Scenario where open_basedir is enabled and ./tmp is off limits
  • Fixed: Delimiter override not working in CRON exports* Added: order_items_types support to CRON attributes
  • Fixed: Order Discount not being filled in WooCommerce

Changed

  • Changed: Exclude Variations from Filter Orders by Product dropdown
  • Changed: Renamed Order Excl. Tax to Order Subtotal Excl. Tax
  • Changed: Filter Subscriptions by Subscripion Product uses jQuery Chosen

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.

 

What’s ahead?

Now that PHPExcel is baked in I’ll be keeping an eye out for export issues arising from the new file generation engine. Development focus for the 1.9 series are:

  • multiple scheduled export support
  • scheduled export frequency scheduling (e.g. run export A at 5:00pm each Friday)
  • export an XML feed in RSS 2.0 format compatible with Google Merchant (we’re getting there but it didn’t make it into 1.9)

Happy exporting!

[Plugin update] Store Exporter Deluxe 1.9 for WooCommerce

Hi WooCommerce store owners, the 1.9 Plugin update is a major Plugin release and recommended upgrade from 1.8.* or earlier. In this release we’ve integrated PHPExcel support for generating native Excel spreadsheets and baked in jQuery Chosen support for long list filters.

In this release you can now:

  • Export native Excel spreadsheets in XLSX (Excel 2007+)
  • Export an XML feed in RSS 2.0 format
  • View the status of recent scheduled exports from the WordPress Dashboard
  • Choose to strip out HTML formatting from the Description/Excerpt fields of exports

Here’s the full changelog broken down.

Added

  • Added: Support for XLSX Excel 2013 export format
  • Added: RSS export format
  • Added: RSS Settings section to Settings tab
  • Added: RSS Title option to Settings tab
  • Added: RSS Link option to Settings tab
  • Added: RSS Description option to Settings tab
  • Added: Support for multiple function/class detection on Export Modules
  • Added: Total Order Items to Orders export
  • Added: Strip tags from Description/Excerpt to Export Options

Fixed

  • Fixed: Product Gallery exporting only Image ID
  • Fixed: FTP Host now strips out excess prefixes
  • Fixed: Default to Attribute Name if Label is empty
  • Fixed: Advanced Google Product Feed: Product Type not exporting
  • Fixed: Variant Products with empty Price
  • Fixed: Filter Products by multiple tax_query arguments
  • Fixed: Default Order Line Types for Orders export to Line Item
  • Fixed: Order Items: SKU empty for Product Variations in Orders export
  • Fixed: Exclude CRON exports from Recent Scheduled Exports Dashboard widget
  • Fixed: Delete multiple archives via bulk actions
  • Fixed: WooCommerce Checkout Manager Pro integration
  • Fixed: Empty SKU on Order Items in Orders export
  • Fixed: Filter Orders by Product missing loads of Products

Changed

  • Changed: Reduced memory requirements for Products export
  • Changed: Reduced memory requirements for Orders export
  • Changed: Using PHPExcel library for CSV, XLS and XLSX export file generation
  • Changed: Filter Orders by Product uses jQuery Chosen
  • Changed: Filter Orders by Product Category uses jQuery Chosen
  • Changed: Filter Orders by Product Tag uses jQuery Chosen
  • Changed: Filter Orders by Product Brand uses jQuery Chosen
  • Changed: Filter Orders by Coupon Code uses jQuery Chosen
  • Changed: Filter Products by Product Category uses jQuery Chosen
  • Changed: Filter Products by Product Tag uses jQuery Chosen
  • Changed: Filter Products by Product Brand uses jQuery Chosen
  • Changed: Filter Products by Product Vendor uses jQuery Chosen
  • Changed: Filter Products by Stock Status now takes Stock Qty into consideration

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.

What’s ahead?

Now that PHPExcel is baked in I’ll be keeping an eye out for export issues arising from the new file generation engine. Development focus for the 1.9 series are:

  • multiple scheduled export support
  • scheduled export frequency scheduling (e.g. run export A at 5:00pm each Friday)
  • export an XML feed in RSS 2.0 format compatible with Google Merchant (we’re getting there but it didn’t make it into 1.9)

Happy exporting!

[Plugin update] Store Exporter Deluxe 1.8.9 for WooCommerce

Hi WooCommerce store owners, the 1.8.9 Plugin update is a bug fix release, we’ve dropped the memory requirements when filtering Orders by Date, addressed Variations missing from Product exports and introduced native WordPress Archives table on the Archives tab.

Update note: Since individual Variations are now included by default in Product exports the memory requirements for Products may go through the roof (e.g. 1000 Products with 10,000 individual Variations linked to those base Products…). Calling for community feedback as to whether we make Variations inclusion in the Products export opt-in via the Filter Products by Product Type list. Thoughts? Add a comment. :)

In this release you can now:

  • Paginate the Archives tab results, there’s a screen option to control number of Archives Per Page
  • Delete all Archives at once from the Archives tab
  • Include Variations in the Product export
  • Include Global Attribute columns in the Product and Orders export

Here’s the full changelog broken down.

Added

  • Added: Support for custom Attributes in Product export
  • Added: Default Attributes to Product export
  • Added: Support for Ship to Multiple Address for Order export
  • Added: Support for Sequential Order ID within WooCommerce Jetpack
  • Added: Support for Sequential Order ID formatting within WooCommerce Jetpack Plus
  • Added: Delete All archives button to Archives screen
  • Added: Format colunn to Archives list
  • Added: Pagination to Archives list
  • Added: Number of Archives to Screen Options on Archives list
  • Added: Support for Featured Image Thumbnail in Product export
  • Added: Support for Product Gallery Thumbnail in Product export
  • Added: Support for exporting WooCommerce Brands

Fixed

  • Fixed: Export Product Attributes in Product export
  • Fixed: Attribute taxonomy missing from Order Items: Product Variation in WC 2.2+
  • Fixed: Variables not being included in Product export when filtering by Categories/Tags/Brands/Vendors
  • Fixed: Return default Post ID where Sequential Order ID is empty
  • Fixed: Delete export file after e-mailing via Scheduled export
  • Fixed: Incorrect mime type for some XML exports
  • Fixed: Date filtering of Orders is now WP_Query-based
  • Fixed: Filter Orders by Order Status via CRON
  • Fixed: Ordering of Product ID’s when exporting Product Variations

Changed

  • Changed: Archives table uses WP_List_Table class
  • Changed: Export to FTP now deletes the archived export
  • Changed: Removed media icon from Archives list
  • Changed: Moved default e-mail receipient and e-mail subject to Export method options
  • Changed: Moved Default remote POST to Export method options

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.

What’s ahead?

Going forward for 1.9 I’m looking at switching from our home-brewed export engine to PHPExcel. This will sort out 99% of encoding issues affecting XLS files and allow for the generation of native Excel 2007-2013 XLSX files. This all depends on licencing requirements and at the end of the day PHP memory requirements. Other features high on the todo list are multiple scheduled export support and scheduled export frequency scheduling (e.g. run export A at 5:00pm each Friday). Happy exporting!

[Plugin update] Store Exporter Deluxe 1.8.7 for WooCommerce

Hi WooCommerce store owners, the 1.8.7 Plugin update brings new export fields and some much requested filters including Filter Orders by Product, by Billing Country, by Shipping Country and additional Product filters for the Scheduled Export engine. Happy exporting!

In this release you can now:

  • Include Product Attribute columns in Order exports; limited to Global Attributes
  • Filter Orders by Product or Billing Country or Shipping Country
  • Filter Products by Product Category and Product Tag in Scheduled Exports
  • Order Date filtering is fixed for Scheduled Exports

Here’s the full changelog broken down.

Added

  • Added: Total Quantity export field for Orders
  • Added: Filter Orders by Billing Country for Orders
  • Added: Filter Orders by Shipping Country for Orders
  • Added: MSRP Pricing to Orders export
  • Added: Order Items: RRP to Orders export
  • Added: Product Subscription details to Products export
  • Added: Filter Orders by Product for Orders
  • Added: Download link to attachments on Archives screen
  • Added: Filter Products by Product Category to Scheduled Exports
  • Added: Filter Products by Product Tag to Scheduled Exports
  • Added: Reset Sorting link to Export Fields box
  • Added: Custom Order meta support to Subscriptions exports
  • Added: Order Item Attribute fields to Orders export

Fixed

  • Fixed: Filter Orders by Date radio options are selected via jQuery calendar or variable date
  • Fixed: CRON exports and scheduled exports not working with WOO_CD_DEBUG activated

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.

Scheduled Holiday Downtime

screenshot-xmas

Hi WooCommerce, Jigoshop, WP e-Commerce and Exchange users (that’s a mouthful), it’s coming up to that time of year for Visser Labs to go on standby for the holiday season.

It’s sure been a fun a productive 2014 with Store Exporter Deluxe taking off and Product Importer Deluxe soon to become Store Importer Deluxe; with new import/merge engine and support for a whole lot more than just maintaining Products!

The Christmas banner will be going up from COB Thursday, 18th of Dec till the 12th of January.

The storefront will still be operating so if you need a Plugin we’re still selling but there will be limited Premium Support available to existing customers and urgent pre-sales only. For everything else we’ll play catch up in January.

Big highlights this year include attending WooConf in San Francisco last month (meeting my WordPress Plugin peers as well as the architects of the platform we rely so much on) and the prospect of migrating our current storefront from Jigoshop to WooCommerce for 2015 (there’s a whole blog post about that migration coming in the new year).

We’ll sweep Premium Support over the weekend prior to opening to ensure we’re ready to go Monday morning with minor Plugin updates and announcements for the year ahead.

On behalf of Visser Labs, we do hope you enjoy any time you may be taking off over the holiday period. Stay safe.

We look forward to catching up with you in 2015. :)

Posted in Uncategorized |

[Plugin update] Store Exporter Deluxe 1.8.5 for WooCommerce

Hi WooCommerce store owners, the 1.8.5 Plugin update is another mammoth update and has been made possible through feature requests and bug issues raised via Premium Support and within our Support Forum. There were issues and feature requests that didn’t make it into this release and are in queue for the next Plugin update, there are no critical fixes in this release but due to the sheer number of features added it’s a recommended update.

In this release you can now:

  • Export individual Orders from the Actions bar on the Order and Edit Order screen
  • Export Orders based on variable dates (e.g. Last 7 days, last 1 month, etc.) as well as within Scheduled Exports
  • Filter rules for different export types have been added to the CRON export engine
  • Set Scheduled Exports and CRON export engine to e-mail multiple recipients

Here’s the full changelog broken down.

Added

* Added: Support for Today in Filter Orders by Order Date
* Added: Support for Yesterday in Filter Orders by Order Date
* Added: Support for Current Week in Filter Orders by Order Date
* Added: Support for Last Week in Filter Orders by Order Date
* Added: Support for variable filtering of Order Date in scheduled exports
* Added: Heading to Order Checkout field labels for WooCommerce Checkout Manager Pro
* Added: All default option to Filter Order by Order Date in Scheduled Exports
* Added: Filter Subscriptions by Subscription Product
* Added: Filter Orders by Order Status to CRON engine
* Added: Filter Orders by mulitple Order ID to CRON engine
* Added: Filter Orders by Order Date to CRON engine
* Added: Support for WooCommerce Follow-Up Emails Opt-outs for Customer exports
* Added: Filter Commissions by Commission Date
* Added: Filter Orders by Order ID
* Added: Product SKU to Commissions export
* Added: New tab to Help pulldown on Store Export screen
* Added: Filter Customers by User Role filter
* Added: Line ending formatting option to Settings screen
* Added: Download as CSV to Actions list on Orders screen
* Added: Download as XML to Actions list on Orders screen
* Added: Download as Excel 2007 (XLS) to Actions list on Orders screen
* Added: Download as CSV to Action list on Edit Order screen
* Added: Download as XML to Action list on Edit Order screen
* Added: Download as Excel 2007 (XLS) to Action list on Edit Order screen
* Added: Compatibility for WC 2.1 for Action list on Orders screen
* Added: Filter Products by Product Status to CRON engine

Fixes

* Fixed: Include all Order Status for WooCommerce 2.2+ in Orders export
* Fixed: Integration with Custom Billing fields in WooCommerce Checkout Fields Editor
* Fixed: Support for Custom Shipping fields in WooCommerce Checkout Fields Editor
* Fixed: Support for Custom Fields in WooCommerce Checkout Fields Editor
* Fixed: Filter Orders by Order Date for Current Month
* Fixed: Multiple e-mail addresses within Default e-mail recipient
* Fixed: Variation Product Type filter for Products breaking export
* Fixed: Filter Order by Order Status in Scheduled Exports not saving
* Fixed: Filter Orders by Order Date in scheduled export
* Fixed: Customer Meta fields not being filled in Customer export
* Fixed: Formatting of Post Status in Commissions export
* Fixed: Default value for Paid Status in Commissions export
* Fixed: Remove scheduled export from WP CRON if de-activated

Changes

* Changed: Purchase Date to Order Date
* Changed: Purchase Time to Order Time
* Changed: Moved add_action for export options to admin.php

Download the latest Plugin update from My Account, or via Dashboard > Updates within the WordPress Administration and for more information visit the Plugin detail page for Store Exporter Deluxe.