DevHub Logo
Home/Blog/WooCommerce Cart Not Updating

WooCommerce Cart & Checkout Blocks Stuck Loading After Adding Product? Jetpack Boost Concatenate JS Conflict Fix (2025)

Motions Studio Team

July 9, 2026

6 min read
WooCommerce cart issue

The Issue: Cart and Checkout Blocks Freeze After Adding a Product

If you are using WooCommerce blocks for your cart and checkout pages, and after updating to WooCommerce 8.9 or later you notice that the pages get stuck on a spinning loader whenever you add a product, the culprit is likely Jetpack Boost's "Concatenate JS" feature. This bug was confirmed in WooCommerce GitHub issue #47492. The conflict occurs because WooCommerce 8.9 introduced a change in how scripts are loaded for block-based cart/checkout pages, and Jetpack Boost's concatenation interferes with the required JavaScript dependencies. The result: the checkout block or cart block appears to load indefinitely, never showing the actual content. Deactivating Jetpack Boost or disabling its concatenate JS option resolves the issue immediately.

Step-by-Step Solution

  • 1Confirm the issue: Add a product to cart, then navigate to cart or checkout page. If the block shows a loading spinner indefinitely, proceed.
  • 2Check your WooCommerce version: is it 8.9 or newer?
  • 3Check if Jetpack Boost is active and the 'Concatenate JS' feature is enabled.
  • 4Temporarily disable Jetpack Boost or turn off 'Concatenate JS' to see if the page loads correctly.
  • 5Implement the PHP code above to exclude cart/checkout pages from concatenation without disabling the feature globally.
  • 6Clear all caches (browser, plugin, server) and test again.
  • 7If using a caching plugin, ensure cart/checkout pages are excluded from minification and concatenation as well.
  • 8Optionally, switch from block-based cart/checkout to shortcode-based pages (WooCommerce > Settings > Advanced > Features) as a fallback.
// Add to your theme's functions.php or a custom plugin
// Exclude WooCommerce cart and checkout pages from Jetpack Boost JS concatenation
add_filter( 'jetpack_boost_js_concatenate_exclusions', function( $exclusions ) {
    if ( function_exists( 'is_cart' ) && function_exists( 'is_checkout' ) ) {
        if ( is_cart() || is_checkout() ) {
            $exclusions[] = 'cart';
            $exclusions[] = 'checkout';
        }
    }
    return $exclusions;
});

// Alternatively, disable JS concatenation entirely for these pages using WooCommerce conditional tags
add_action( 'wp', function() {
    if ( is_cart() || is_checkout() ) {
        add_filter( 'jetpack_boost_should_concatenate_js', '__return_false' );
    }
});

Final Recommendation

Best Practice

To prevent future occurrences, keep both WooCommerce and Jetpack Boost updated. Monitor changelogs for compatibility fixes. If you rely heavily on block-based cart/checkout, consider using the PHP exclusion filter provided above rather than disabling concatenation sitewide. For complex setups, test updates in a staging environment first. If the issue persists, switch to the classic shortcode checkout pages—they are less prone to JavaScript conflicts with performance plugins.

WooCommerce Fixes
Share this guide
M

Motions Studio Team

WordPress developer specializing in debugging, WooCommerce optimization, and PHP compatibility fixes.