Today we’re excited to announce that WooCommerce Product Add-Ons 3.0.0 has been released!
We’ve been listening to your feedback and we’re excited to share with you some new features for WooCommerce Product Add-Ons! We’ve added the ability for you to adjust your pricing strategies with either a flat fee or a percentage ( this is in addition to the quantity pricing that already existed ). We’ve also added the ability for you to add image swatches to your product add-ons allowing customers to have a more visual representation of what they are picking. The last major feature is adding a line-item breakdown of the add-ons that have been selected for the lifecycle of the customers purchase.
As of 3.0.0 you will now be able to select from three different pricing strategies: flat fee, quantity based, and percentage based.
- Quantity-based will multiply the add-on cost by the product price and product quantity ( this how Product Add-Ons worked prior to 3.0.0 )
- [New] Percentage-based will calculate a percentage of the product price multiplied by the quantity – you can use this for gratuity, upgrades prices as a percent of the total price, or donations
- [New] Flat fee will be a flat amount regardless of the product price or quantity – you can use this for upgrades that are applied once, regardless of the quantity ordered, like a printing set-up fee
We’ve added a feature to allow image swatches for selection as an add-on in the frontend. For example, instead of picking from a list of colors, you can now upload image swatches that customers will be able to choose to add to their cart.
Line items display
We’ve added a line item view on the cart and checkout pages, to let your customers more easily understand how add-ons are contributing to the price they’re being charged.
Here are a couple examples of what that will look like:
- Changed woocommerce_add_cart_item hook to woocommerce_cart_contents_changed due to WooCommerce 3.5
- Added woocommerce_before_cart_item_quantity_zero – Remove add-ons that are tied to parent product in the cart.
- Added woocommerce_after_cart_item_quantity_update – Update the add-on quantity and line item price when parent product quantity is updated.
- Added woocommerce_before_calculate_totals – Set the add-on price to the line item total.
- Added woocommerce_remove_cart_item – Remove the add-on when parent product is removed.
- Added woocommerce_restore_cart_item – Restore the add-on of the parent product when undo is clicked.
Order item meta
- Parent product – _wc_pao_attached_addons – the list of add-ons added with the product.
- Add-on item – _wc_pao_addon_name – add-on name.
- Add-on item – _wc_pao_addon_value – add-on value.
- Add-on item – _wc_pao_addon_field_type – add-on field type.
- Add-on item – _reduced_stock – to prevent parent product from decreasing stock from an add-on.
The following addon types will no longer have option rows:
- Short Text – Formerly Custom input (text)
- Long Text – Formerly Custom input (textarea)
- File Upload
- Price – Formerly Additional price input
- Quantity – Formerly Additional price multiplier
Migration on these changes will be seamless for you to upgrade as we’ve written a migration script to handle all of that work for you. We will not migrate settings for existing orders so that all of your records from before 3.0.0 will remain intact.
Everything else . . .
- We’ve redesigned the way that you build your add-ons both globally and per-product to help make store administration easier and more intuitive
- We’ve added additional compatibility for these features with WooCommerce Bookings
- We’ve added compatibility for WooCommerce 3.5
On top of the new features, there are a variety of minor tweaks, and fixes which we won’t go into detail here but you can check out for yourself in the changelog.
We will be continuing to work on more updates. Check out the ideas board to keep up to date or suggest new improvements.