Table of Contents
- WooCommerce Admin Updates
- WooCommerce Blocks Updates
- WooCommerce Core Updates
- Remove set_backorders logic from external products. Closes #29696.
- State and Country field labels on the Checkout page should be read by screen readers. Closes #27317.
- On the action of deleting a product category, we want to reassign any products that have been assigned to deleted category categories to a default Uncategorized category. Closes #29540.
- Make rounding more accurate when prices are entered more than 2dp. Closes #24184 and #28292.
- WooCommerce REST API Updates
- Update the date_query usage in the CRUD controller to be consistent, generating an array of queries.
- Added the dates_are_gmt parameters to REST API to searched posts using the post_date_gmt column.
- On the action of deleting a product category, we want to reassign any products that have been assigned to deleted category categories to a default Uncategorized category.
- WooCommerce Admin Updates
- Release Testing Instructions WooCommerce Admin 2.3.0
- WooCommerce Blocks Updates
- Smoke testing of regular WC Blocks functionality
- Add labels and allow searching terms in WooCommerce Navigation Link block variations
- WooCommerce Core Updates
- Remove set_backorders logic from external products. Closes #29696
- State and Country field labels on the Checkout page should be read by screen readers. Closes #27317
- On the action of deleting a product category, we want to reassign any products that have been assigned to deleted category categories to a default
Uncategorized
category. Closes #29540 - Make rounding more accurate when prices are entered more than 2dp. Closes #24184 and #28292
- WooCommerce REST API Updates
- Update the
date_query
usage in the CRUD controller to be consistent, generating an array of queries - Add the
dates_are_gmt
parameters to REST API to searched posts using thepost_date_gmt
column. - On the action of deleting a product category, we want to reassign any products that have been assigned to deleted category categories to a default Uncategorized category.
- Update the
WooCommerce Admin Updates
WooCommerce Blocks Updates
Add labels and allow searching terms in WooCommerce Navigation Link block variations.
PR: https://github.com/woocommerce/woocommerce/pull/29772
To test:
- You will need to install recent nightly of WordPress 5.8 (you can use WordPress beta tester for this) and the latest version of Gutenberg.
- Create a page and add a Navigation block.
- Inside the navigation block, add a product link, a product category link, and a product tag link and verify all of them work correctly and have labels that make it clear they are related to products.
Before | After |
---|---|
WooCommerce Core Updates
Remove set_backorders logic from external products. Closes #29696.
PR: https://github.com/woocommerce/woocommerce/pull/29766
To test:
- Create an Affiliated/External product.
- Go to the product list and check the bulk edit checkbox for the external product.
- On the
Bulk actions
dropdown selectEdit
thenApply
- Go to
Backorders
dropdown and select any value. - Click on
Update
- Ensure there are no errors in your logs and the product updated without issues.
State and Country field labels on the Checkout page should be read by screen readers. Closes #27317.
PR: https://github.com/woocommerce/woocommerce/pull/29706
To test:
- Add products to cart, go to checkout.
- Enable screen reader in operating system (on Mac, it's called "Voiceover" and is located in accessibility settings). Or you can use an actual screen reader if you have.
- Cycle through the fields on checkout page and make sure that State and Country field labels are being read by the screen reader.
See #27317 for the screenshots in order to understand what is expected.
On the action of deleting a product category, we want to reassign any products that have been assigned to deleted category categories to a default Uncategorized
category. Closes #29540.
PR: https://github.com/woocommerce/woocommerce/pull/29681
To test:
- Create a product category.
- Create several simple products and assign them the category from step 1.
- Now go to the product category page and delete the category you've created in step 1.
- Go back to the products page and ensure these products have the
Uncategorized
category assigned instead of nothing.
Make rounding more accurate when prices are entered more than 2dp. Closes #24184 and #28292.
PR: https://github.com/woocommerce/woocommerce/pull/29318
To test:
Case1: From 24184 first comment
- Set the rounding to subtotal level, and price entered exclusive taxes from WooCommerce > Settings > Tax.
- Add a tax rate of 20%.
- Add a product for price 30.825. Add it to cart.
- Checkout the cart and confirm that prices are 36.99. Without this fix, they would be 37.
Case 2: From #28292
- Set the rounding to subtotal level, and price entered inclusive taxes from WooCommerce > Settings > Tax.
- Add a tax rate of 23%.
- Set the decimals displayed to
0
from WooCommerce > Settings > General - Add a product for 301.90909. Add it to cart.
- Checkout the cart and confirm that prices everywhere is 302. Without this fix they would be 301.
WooCommerce REST API Updates
Update the date_query
usage in the CRUD controller to be consistent, generating an array of queries.
PR: https://github.com/woocommerce/woocommerce/pull/29909
To test:
- From the WordPress general settings page (/wp-admin/options-general.php), set the timezone of your site to "UTC +4".
- Create a new order from WooCommerce > Orders > Add Order (/wp-admin/post-new.php?post_type=shop_order).
- Set the date created to 2021-05-14 @ 00:00.
- Create a REST API Key from WooCommerce > Settings > Advanced > REST API. Take note of the consumer key and secret.
- Make a request to the orders endpoint to verify that
post_date_gmt
is used. See example below. Replace [domain], [consumer_key], and [consumer_secret]:
curl "https://[domain]/wp-json/wc/v3/orders?dates_are_gmt=true&after=2021-05-13T19:00:00&before=2021-05-13T22:00:00&consumer_key=[consumer_key]&consumer_secret=[consumer_secret]"
- Verify that the order you created in step 2 is included in the results.
Added the dates_are_gmt parameters to REST API to searched posts using the post_date_gmt column.
PR: https://github.com/woocommerce/woocommerce/pull/28132
To test:
- Install WordPress/WooCommerce with testing data.
- Generate some API Keys.
- Make a REST API request to the 'https://localhost.com/wp-json/wc/v2/orders' end point and use the
dates_are_gmt
parameters to allow the before and after parameters to use thepost_date_gmt
column if it is true. Example:
https://localhost.com/wp-json/wc/v3/orders?dates_are_gmt=true&after=2021-04-24T06:00:00&before=2021-04-24T14:00:00&consumer_key=xxx&consumer_secret=xxx
On the action of deleting a product category, we want to reassign any products that have been assigned to deleted category categories to a default Uncategorized category.
PR: https://github.com/woocommerce/woocommerce/pull/29681
To test:
- Create a product category.
- Create several simple products and assign them the category from step 1.
- Now go to the product category page and delete the category you've created in step 1.
- Go back to the products page and ensure these products have the
Uncategorized
category assigned instead of nothing. - Do the same test with REST API deleting the product category via
wp-json/wc/v3/products/categories/{cat_id}
endpoint usingDELETE
method. Tip make sure to have a JSON payload of"force": true
for this to work.
Contribution
- Set up development environment
- Our Git Flow
- SCSS and JS minification
- Naming conventions
- CSS SASS coding guidelines and naming conventions
- Critical Flows
- API Critical Flows
- String localisation guidelines
- Translating WooCommerce
- Deprecation in core
- Adding Actions and Filters
- Common Issues
- Writing high-quality testing instructions
Release Notes
- Release Testing Instructions
- 3.6.x notes/FAQ
- 2.6.x to 3.0.0 Developer Migration Notes
- Select2 fields not working in 3.0.x
- Thumbnail Image Regeneration in 3.3+
- Customizing image sizes in 3.3+
REST API and CLI
CRUD & Data Descriptions
- Database Description
- CRUD Objects in 3.0
- Order and Order Line Item Data
- Coupon Data
- Customer Data
- Product Data
- Data Stores
Internal APIs
Theming
- Enabling product gallery features (zoom, swipe, lightbox)
- Template File Guidelines for Devs and Theme Authors
Examples / Guides
WooCommerce is an open source commerce platform built for WordPress and lovingly crafted by Automattic and the WooCommerce community 💜. Come and work with us!