WordPress 6.9 is coming. Should you worry?
WordPress 6.9 RC2 is out. Here is what I test before updating client sites, the heading CSS change developers should watch, and why I wait for the .1 release.
WordPress 6.9 RC2 is out. Here is what I test before updating client sites, the heading CSS change developers should watch, and why I wait for the .1 release.
A client’s WooCommerce order emails kept landing in spam, even with SMTP set up. WordPress 6.9 fixes the deeper causes: the sender address mismatch, garbled encoding, and a 17-year-old multipart bug.
A client wanted the same URL list on an admin page, a homepage block, and an external API. The old way meant duplicating logic. The WordPress Abilities API lets you define the feature once and reuse it everywhere.
A rundown of what’s worth caring about in WordPress 6.9: the new Block Processor for faster block parsing, experimental PHP-only blocks, a theme.json fix for Gallery aspect ratios, and why it pays to wait for 6.9.1.
A client’s bulk product import kept flattening their brand hierarchy. It turned out to be a WooCommerce importer bug, and the 10.3.5 dot release fixed it. Here’s what happened, plus the other fixes that shipped with it.
An intermittent coupon error at checkout left the logs useless because they had no context. Here’s how structured logging in WordPress captures the user, request, and cart state so you can reproduce and fix the bug.
A real WooCommerce case where two plugins both tried to extend wpdb and only one could win. Here is how the decorator pattern wraps the object instead, so they can stack without breaking each other.
A new client’s WooCommerce checkout was throwing fatal errors after a developer rebuilt field validation from scratch. The fix was not a better library but a short function hooked into WooCommerce, and here is why that was the right call.
A client wanted one checkout field, and the old code tempted me into a week-long refactor. I shipped the field with two WooCommerce hooks instead, a reminder that a working feature on time beats a perfect rewrite that never ships.
A WooCommerce add to cart button was failing silently for some users, with no logged errors to go on. Here is how a few lines in wp-config.php turn on WordPress error logging so you can see what is actually breaking on a live site.