Repository navigation
Requires WooCommerce 9.1 or later
The declared minimum was WooCommerce 7.4, and nothing tested it. When the WordPress minimum moved to 6.6, the oldest pair in the automated tests moved to WooCommerce 9.1, while the header kept saying 7.4. The minimum now names the oldest WooCommerce the tests actually install. Shops on WooCommerce 7.4–9.0 should update WooCommerce before updating this plugin.
The currency switcher works from the keyboard
The switcher could be reached with Tab and opened with Enter, but no key could pick a currency.
- Enter, Space, ↓ or ↑ on the switcher open the list on the current currency.
- ↑ ↓ Home End move through it, and Enter or Space pick a currency and return focus to the switcher.
- Escape, or moving focus away, closes the list without changing anything.
- Keyboard focus is now visible. In a navigation menu the switcher previously showed no focus at all.
This applies to the shortcode, the Elementor widget and the menu item alike. Screen readers now get a named list, and the decorative arrow is hidden from them.
Converted prices are hidden when the product's price is
A theme or plugin that hides prices (catalogue or maintenance mode, "log in to see prices", wholesale) hid WooCommerce's price, but the plugin's converted prices stayed printed under it. The row now follows the product's own price display:
- If the price is emptied, or replaced by text or a link, the row is hidden.
- If the price is only decorated (a suffix, a "from" prefix), the row stays.
This applies to the product page, the price shortcode and the Elementor price widget.
The switcher script loads only where it is used
Where prices are converted on the server (cache compatibility off, a logged-in visitor, the cart and checkout), the switcher's script now loads only on pages that show a switcher. Where the browser converts prices, nothing changes. The stylesheets still load on every page on purpose, so a switcher in the header never flashes unstyled.
Ready for WordPress 7.2
The automated tests now also run every week against the development version of WordPress. Their first run found that WordPress 7.2 reorders HTML attributes in filtered output. The plugin's own markup was unaffected; two tests that assumed the old order were fixed.
Verification
- Unit 470 tests · Integration 214 tests on PHP 7.4 / WordPress 6.6 / WooCommerce 9.1.4 up to PHP 8.4 / WordPress 7.1.4 / WooCommerce 11.2.1, plus WordPress 7.2-beta4 · front-end 74 tests · CI 14/14 green. Every test environment now checks that the WordPress and WooCommerce it installed are the versions it asked for.
- Security tests that read the plugin's routes and request handlers from the running code. Each is attacked as a subscriber with a valid nonce and as an administrator with a forged one, with controls that must fail.
- Plugin Check: 0 errors, 0 warnings. A deliberately inserted violation was caught, then removed.
- Independent pre-ZIP audit passed.
- Package compared file by file with 2.2.1: 336 files, none added or removed, every change within this release.
- Installed and checked on a live store.
- Package verified from the server on three channels:
trunk,tags/2.3.0and the public download. 336/336 files identical, 0 differences.
SVN: r3783004 (trunk) · r3783007 (tag)