Improved: Check cart is completely empty not just the cart contents.
Improved: Product title now returns in status when item is removed from cart.
Corrected: Redirect to current page when hiding admin notice.
Added: Schema for count items API.
Added: Option to keep removed items in session when clearing the cart.
Deprecated: cocart_return_empty_cart filter.
Fixed: Install date value when product review notice loads for the user.
Fixed: Validation of variable product.
Fixed: Product validation failing before adding to cart to return error response.
Fixed: Formatting variation data for custom option.
Fixed: Issue with a non-numeric value encountered.
Fixed: Session failing returned response if cart is empty.
Fixed: Cart source when cart was first created no longer updates.
Merged: Changes added in CoCart v2.9.2
Moved: Deleting cart API under session API for admins only.
Tweaked: Cart response now returns empty only if no cart exists or the cart is completely cleared. This allows for only removed items left in session to be returned to the cart without issues.
Dev: Forked get_customer_unique_id() from WooCommerce session handler for backwards compatibility. Introduced to help with unit tests in WooCommerce since version 5.3. Not needed for CoCart but best to have it and not need it than not have it and need it.
CoCart v3 is very close to completion so any feedback you provide testing this beta that needs solving before releasing a release candidate is most appreciated.
I’m aiming to have CoCart v3 released sometime around mid to late April. Up until then I will be working on preparing CoCart Pro to be ready for the big update.
What’s New since CoCart v3 Beta 2?
New: Added the CoCart menu to the new WooCommerce Navigation Menu if it exists or is enabled.
WooCommerce will make this enabled by default in the future and as CoCart is WooCommerce related, it is best that users have everything related to WooCommerce under one roof.
NEW for API: Cart formatting applied to clean up get cart response. This is similar to what the Get Cart Enhanced add-on does by removing the item key as the parent array making it easier to look up the items in the response.
NEW for API: Added cart validation, check each item is in stock and applied coupons are still valid. If anything is not valid an error notice will be added which returns in the response.
Should for some reason the CoCart session table not exist in the database. To help prevent crashing the site when viewing the WooCommerce System Status page, it will check if the table exists before trying to return results.
If it is indeed missing it will simply return “Missing session table“. Should this be the case a tool is available to verify and create the missing table.
Changes since beta 2
Improved: Plugin activation, environment check and install CoCart in one go for faster performance.
Tweaked: Redirect user to plugins page after dismissing a notice.
Tweaked: WooCommerce System Status will check if the CoCart session table exists before returning results.
Tweaked: Getting Started page to link new plugin section for add-ons.
Tweaked: Admin notices style.
Tweaked: Autoloader for WooCommerce Admin notes.
Tweaked: Added short descriptions to WP-CLI commands should the user do wp cocart help.
Fixed: Check if DISABLE_WP_CRON constant is defined.
Fixed: Routes returned for store API.
Fixed: Callback to WP-CLI commands.
Dev: Made sure SCSS assets do not export when downloading GitHub source zip of any release.
Dev: Merged updates from v2.9 and v2.9.1
Dev: Introduced cocart_before_get_cart filter for modifying the cart data in any capacity before the cart response is returned.
Dev: Introduced cocart_cart filter for modifying the cart response in any capacity.
PHP requirement has been bumped to v7.3 to ensure you are getting the best of CoCart.
Excited to announce that CoCart Lite 2.9.1 is now publicly available! This is a minor release so everything is backwards compatible with the previous version.
As always, it is recommend to create a backup of your site before updating.
What’s new in CoCart v2.9.1?
This release fixes a problem with merging cart contents together. It’s a feature that WooCommerce provides in the core and one that was not working out of the box with CoCart.
What is this feature for? Well it’s simple. The feature is triggered when a customer logs in but started as a guest. They already added items to the cart but also have items added to the cart as a registered customer.
So for any items that are not already in the cart, they are merged together. Now you only have one cart of all the items you added. This will then destroy the guest cart as it is no longer needed.
To help with those who wish to change the default attribute value, a new filter cocart_cookie_samesite has been introduced to allow you to override it. Before this attribute was added the default value was lax after 20th February 2020 if the attribute is not applied.
This cookie change is only available for those who use PHP 7.3 or above and will be the minimum requirement for CoCart v3 once it is released so I recommend that you update to PHP 7.3 or higher soon.
Why was this cookie attribute added so late? To be honest it just got forgotten about due to Covid-19, personal health and working on other improvements for CoCart. I only just recently got reminded about it.
If you have tips or feature requests to help CoCart improve for your development then please send me feedback or make a enhancement request via the GitHub repository where I can manage things better.
I like to thank Joel for this release who spent a little of his weekend helping me to get this done.
This release does not introduce any changes to the database.
This release does not introduce any changes to the documentation.