WordPress 7.0 Block Checkout Changes: What Broke (and Didn’t) for Discount and Coupon Plugins
WooCommerce Tips
WordPress 7.0’s Block Checkout, Through a Discount Plugin’s Eyes
A narrower follow-up to the general WordPress 7.0 rundown — focused entirely on whether your BOGO deal, tiered pricing, or coupon code still survives the trip from cart to block checkout.
[Published: 2026-07-10]
WordPress 7.0 released on May 20, 2026. If you run a WooCommerce store and searched for what it means for you, you likely found — and should read first — the broader breakdown of what WordPress 7.0 actually changes for your store, which covers the new admin color scheme, AI Connectors, the Font Library, and the PHP 7.4 minimum. That post is the general map.
This post narrows to one question that general coverage tends to skip: if you run a discount campaign, a coupon code, or a BOGO deal on WooCommerce’s block-based cart and checkout, does WordPress 7.0 change anything about whether that discount still shows up correctly when a customer pays? The short answer is no — WordPress 7.0 itself doesn’t touch the mechanism that causes discount plugins to break on block checkout. But the risk that mechanism represents hasn’t gone away either, and a WordPress major-version update is exactly the moment worth using to check it.
Quick summary
- WordPress 7.0 doesn’t touch WooCommerce’s block checkout architecture. It’s a WordPress core release; the Cart Block and Checkout Block are WooCommerce’s own components and didn’t change because of it.
- The block checkout compatibility risk for discount plugins predates WordPress 7.0 and has nothing to do with this specific update — it’s about whether a plugin applies discounts through classic PHP cart hooks or through WooCommerce’s Store API.
- Native WooCommerce coupons are unaffected. The coupon field is built into the Checkout Block itself and isn’t something a WordPress update could break.
- Both Smart Cycle Discounts and TrustLens list “Tested up to: 7.0” in their current WordPress.org readme files, as of this writing.
- A WordPress major update is still a good trigger to re-test your discount plugin on block checkout — not because 7.0 caused new risk, but because it’s a natural checkpoint to catch a risk that was already there.
The Question WordPress 7.0’s Release Notes Don’t Answer
WordPress’s own release notes for version 7.0 describe changes to WordPress core — the block editor, the admin interface, the new AI Connectors screen, performance work, and the PHP 7.4 minimum. None of that is about WooCommerce, and none of it is written with a store owner’s checkout flow in mind. That’s not a criticism of the release notes; WordPress core doesn’t know what plugins you run.
The gap this creates is real. A store owner running a BOGO campaign, a tiered-pricing setup, or a bundle of unique coupon codes reads “WordPress 7.0 is out,” updates, and is left wondering whether that update touched anything about how their checkout actually calculates a price. The honest answer requires separating two different systems that get talked about as if they’re one thing: WordPress core (what actually changed in 7.0) and WooCommerce’s block-based cart and checkout (a WooCommerce feature that has its own separate compatibility story, unrelated to any specific WordPress version).
What WordPress 7.0 Actually Touches — and What It Doesn’t
WordPress 7.0’s confirmed changes are a new “Modern” admin color scheme, the AI Connectors settings screen, Visual Revisions for post/page history, Font Library support on classic themes, per-block responsive visibility controls, page-load performance improvements (image loading priority, script module dependencies, on-demand block stylesheet loading), and a PHP 7.4 minimum requirement. All of that is documented in the general overview linked above, and none of it is a change to WooCommerce’s checkout rendering pipeline.
That distinction matters because WooCommerce’s Cart Block and Checkout Block are WooCommerce’s own components, built and maintained on WooCommerce’s release cycle — not WordPress’s. They were introduced starting with WooCommerce 8.3 and made the default for new installs. A WordPress core release doesn’t rewrite them. WordPress 7.0 shipping doesn’t mean the block cart or checkout works any differently today than it did the week before the update.
Two release cycles, two compatibility questions
“Is my plugin compatible with WordPress 7.0” and “is my plugin compatible with WooCommerce’s block checkout” are separate questions with separate answers, even though both get lumped under “compatibility” in casual conversation. A plugin can be perfectly fine on WordPress 7.0 and still have an unresolved block checkout problem that’s been there since WooCommerce 8.3 — the WordPress update didn’t cause it and won’t fix it either.
A Quick Recap: Why Block Checkout Breaks Certain Discount Plugins
This mechanism is not new, and it isn’t something WordPress 7.0 introduced — it’s worth restating briefly here because it’s the actual source of risk that store owners conflate with “the WordPress update.” The full breakdown, including how to test for it and the architectural fix, lives in why your WooCommerce discount plugin broke after you switched to block checkout.
The short version: WooCommerce’s classic cart and checkout render through PHP templates, and many discount plugins hook into that rendering pipeline — woocommerce_cart_calculate_fees, woocommerce_before_calculate_totals, and similar PHP action/filter hooks — to inject a discounted price at calculation time. The block-based Cart Block and Checkout Block don’t go through that PHP template pipeline at all. They’re React components that read cart and pricing data through WooCommerce’s Store API. A plugin that only knows how to modify prices through the classic PHP hooks can end up invisible to the block cart, even though the discount logic is technically still running.
The result, when it happens, is quiet. The product page shows the discounted price correctly (product pages still render through PHP). The block cart or checkout shows the original price. No error message appears. The first person to notice is usually a customer, mid-checkout, wondering why the price doesn’t match what the product page promised.
Does WordPress 7.0 Change That Risk at All?
No — and this is the direct answer this post exists to give. WordPress 7.0 does not alter the Store API, does not change how the Cart Block or Checkout Block fetch pricing data, and does not modify the classic PHP cart hooks that some discount plugins rely on. The block checkout compatibility gap described above existed before WordPress 7.0 and is unaffected by it in either direction — WordPress 7.0 neither introduces a new version of this problem nor resolves an old one.
What a WordPress major-version update does do, practically, is give store owners a reason to open their admin, look at plugin update notices, and think about their stack as a whole. That’s a genuinely useful moment to re-run a block checkout discount test even though the WordPress update itself isn’t the cause of any risk you’d find. If you haven’t checked whether your discount plugin’s prices survive into the block cart since you last changed anything about your checkout pages, updating to WordPress 7.0 is as good a trigger as any to do it now rather than during your next sale.
The two-minute test, worth repeating after any update
Add a discounted product to your cart, open the cart page, and check that the discounted price is what’s displayed — not the original price. Then proceed to checkout and confirm the order total matches. This test takes two minutes and it is the single most reliable way to catch block checkout discount breakage, regardless of what update triggered your curiosity.
How to Check Your Own Discount or Coupon Plugin Right Now
Three checks, in order of speed:
Confirm which checkout you’re actually running
Go to WooCommerce → Settings → Advanced → Page setup and open your Cart and Checkout pages in the editor. If you see a Cart Block or Checkout Block, you’re on block checkout. If you see shortcode text like [woocommerce_cart], you’re on classic checkout and this specific risk doesn’t apply to you.
Run the live cart test
Activate a discount (campaign, BOGO rule, or coupon), add the discounted product to a fresh cart session, and check that the cart page and checkout page both show the correct discounted total.
Check the plugin’s own compatibility claims and support forum
Search the plugin’s WordPress.org support forum for “block checkout” or “blocks.” Multiple unresolved threads, or a developer acknowledgment of the gap, is a reliable signal about where things actually stand — more reliable than a marketing claim on a sales page.
If the product page shows the discount but the cart or checkout doesn’t, you’ve found the exact symptom described above, and the plugin’s underlying architecture — not WordPress 7.0 — is the thing to investigate.
Where Smart Cycle Discounts and TrustLens Actually Stand
Since this is a Webstepper-published post, it’s worth being precise rather than promotional about our own plugins’ status, using the same standard applied to any compatibility claim: what the readme actually says, checked at the time of writing.
Smart Cycle Discounts, as of version 2.1.11, lists Requires at least: 6.4, Tested up to: 7.0, WC requires at least: 8.0, and WC tested up to: 9.5 in its current WordPress.org readme.txt. In plain terms: the developer has explicitly tested and confirmed this plugin against WordPress 7.0 as of this writing — this isn’t an inferred or hoped-for compatibility, it’s the stated tested-up-to version. On the block checkout question specifically, Smart Cycle Discounts applies discounts through WooCommerce’s price and cart-calculation hooks and exposes the adjusted cart prices to the block cart and checkout through a WooCommerce Store API extension, which is the architectural approach described above as the one that survives the move to blocks. The plugin’s readme FAQ states it directly: “Smart Cycle Discounts fully supports WooCommerce block cart and checkout pages (WooCommerce 8.3+). Discounted prices display correctly with strikethrough formatting in both classic templates and the new block-based cart/checkout.”
TrustLens, as of version 1.3.8, lists Requires at least: 6.4 and Tested up to: 7.0 in its current WordPress.org readme.txt as well. TrustLens doesn’t apply discounts or touch cart pricing at all — it’s a fraud-detection and trust-scoring plugin that reads order and customer data — so the block checkout pricing-hook issue described in this post isn’t something TrustLens is exposed to in the first place. Its own compatibility work is concentrated on order data storage (it declares WooCommerce HPOS compatibility) and on checkout-blocking enforcement, which its readme states covers “Classic + Blocks.”
Both figures come directly from each plugin’s current readme.txt as published to WordPress.org at the time this post was written. Plugin versions and tested-up-to fields change over time — if you’re reading this well after July 2026, check the current readme rather than taking this snapshot as permanent.
Why “Tested up to: 7.0” is worth reading literally
A readme’s “Tested up to” field is a specific developer claim, not marketing language — it means someone actually ran that version and confirmed the plugin behaves correctly. Plugins that haven’t been re-tested against a new WordPress release usually still say the previous version (6.9, 6.8, etc.) until the developer catches up, and that’s a meaningfully different — and more honest — signal than silence. Always check this field yourself rather than trusting a general “compatible” claim on a sales page, for any plugin you rely on.
Coupons and Campaign Discounts Don’t Carry the Same Risk
It’s worth separating two things that get lumped together under “discounts” in this conversation, because they carry genuinely different levels of block checkout risk.
WooCommerce’s native coupon system — the coupon code field a customer types in at checkout — is built directly into the Checkout Block itself and has been fully supported since block checkout was introduced. Coupons apply through WooCommerce’s core coupon handling, a different layer entirely from the third-party PHP cart hooks that cause the campaign-discount breakage described above. If your only concern is whether coupon codes work on block checkout, they do, and neither WordPress 7.0 nor any other recent update changes that. If a code still won’t apply, the cause is somewhere other than block checkout — the guide on why a WooCommerce coupon code isn’t working walks through the 12 usual reasons.
Campaign-style discounts — automatic percentage-off sales, BOGO deals, tiered pricing, spend thresholds — are where the risk actually lives, because these are the discount types typically handled by a third-party plugin rather than WooCommerce core, and third-party plugins vary widely in whether they’ve done the Store API integration work needed for block checkout. This is the same distinction covered in more depth in the coupons vs. campaign discounts comparison, which is useful background if you’re trying to decide which mechanism to use for a given promotion in the first place.
If you’re running both — coupon codes for one type of promotion, a plugin-driven campaign for another — it’s worth testing each independently rather than assuming that a working coupon field means your campaign discounts are also fine on block checkout. They’re unrelated systems from WooCommerce’s point of view, even though a customer sees them as “the discount” on the same order.
Frequently Asked Questions
Did WordPress 7.0 break WooCommerce’s block checkout?
No. WordPress 7.0 is a WordPress core release and does not modify WooCommerce’s Cart Block, Checkout Block, or Store API. WooCommerce’s block checkout is a WooCommerce feature maintained on WooCommerce’s own release cycle, not WordPress’s. As with any major update, testing your checkout flow after updating is good practice, but there is no known issue connecting WordPress 7.0 specifically to block checkout breakage.
Is my discount plugin automatically compatible with WordPress 7.0 if it worked before the update?
In most cases, yes — a discount plugin that worked correctly on WordPress 6.x will typically continue working on WordPress 7.0, since 7.0’s changes are concentrated in the admin interface, the block editor, and core infrastructure rather than in WooCommerce’s cart or checkout logic. The more reliable confirmation is checking the plugin’s own readme.txt for its “Tested up to” field — if it already lists 7.0, the developer has explicitly verified it.
How do I know if my WooCommerce store is even using block checkout?
Go to WooCommerce → Settings → Advanced → Page setup and open your Cart and Checkout pages in the WordPress editor. If you see a Cart Block or Checkout Block, you’re on block checkout. If you see shortcode text like [woocommerce_cart] or [woocommerce_checkout], you’re on the classic template and the block checkout compatibility question doesn’t apply to your store.
Will my WooCommerce coupon codes stop working after updating to WordPress 7.0?
No. WooCommerce’s native coupon system is built into the Checkout Block itself and is unrelated to both WordPress core version changes and the third-party plugin block checkout issue described in this post. Coupon codes should continue to work exactly as before after updating to WordPress 7.0.
Are Smart Cycle Discounts and TrustLens tested against WordPress 7.0?
As of this writing, Smart Cycle Discounts (version 2.1.11) and TrustLens (version 1.3.8) both list “Tested up to: 7.0” in their current WordPress.org readme.txt files. Smart Cycle Discounts additionally supports WooCommerce’s block cart and checkout through a Store API extension, so campaign discounts display correctly on both classic and block checkout. TrustLens does not modify cart pricing and enforces checkout blocking across “Classic + Blocks,” per its readme. Always check the current readme for the latest tested-up-to version, since this is a point-in-time snapshot.
What should I actually do after updating to WordPress 7.0 if I run discount campaigns?
Run the live cart test: activate a discount, add a discounted product to the cart, and confirm the discounted price shows correctly on both the cart page and at checkout. This isn’t specifically a WordPress 7.0 task — it’s a good habit after any major update to your WordPress core, WooCommerce, your theme, or your discount plugin — but a major version bump is a reasonable natural checkpoint to actually do it.
The narrower question, answered plainly
WordPress 7.0 is a substantial release for WordPress core, but it isn’t a WooCommerce release, and it doesn’t touch the mechanism that determines whether a discount plugin’s prices survive the trip into the block cart. That mechanism is about how a specific plugin applies its discounts — through classic PHP cart hooks, or through WooCommerce’s Store API — and that architectural choice was made long before WordPress 7.0 existed and won’t be changed by any future WordPress release either.
What’s actually useful to take from a WordPress major-version update isn’t a new compatibility risk to worry about. It’s a natural moment to run a two-minute test you should be running before every major sale anyway: activate a discount, add it to the cart, and look at the number. If it matches what the product page promised, you’re fine — on WordPress 7.0, and on whatever comes after it.
Run discount campaigns that survive block checkout
Smart Cycle Discounts applies BOGO, tiered, and scheduled campaigns through WooCommerce’s own pricing hooks and exposes them to the block cart via a Store API extension — no separate configuration needed. Free on WordPress.org.