WordPress

WooCommerce

WooCommerce is the plugin that turns a WordPress site into an online store. It adds products, a cart, checkout, orders, and payment and shipping settings.

How it is measured

Products are posts of type product. Orders were posts of type shop_order and, with High-Performance Order Storage enabled, are rows in wp_wc_orders. It creates Cart, Checkout, and My Account pages, and sets cookies like woocommerce_items_in_cart. Background jobs run through Action Scheduler, which you can watch under WooCommerce > Status > Scheduled Actions.

Open WooCommerce > Status for the system report: WP and PHP versions, active plugins, database size, and template overrides that are outdated. wp wc commands cover products and orders from the shell.

Worked example

A candle shop with 220 products and 40 orders a day sees checkout take 6 seconds. The Scheduled Actions screen shows 18,000 pending actions, mostly from an abandoned-cart plugin. Each admin page load tries to process some of them.

Clearing the backlog and setting the queue to run through a real cron job at one-minute intervals drops checkout to 1.8 seconds. The admin order list returns to normal.

How it differs

WooCommerce is a plugin that depends on WordPress, and it relies on WordPress features like post types, taxonomies, and user roles. WordPress works as a site without it. Store pages are dynamic, so a page cache must skip the cart, checkout, and account pages, and cart fragments requests add load that a content site does not have.

Common errors

Caching the cart or checkout pages. Overriding templates in the theme and never updating them. Leaving the cart fragments AJAX request on every page. Running Action Scheduler on web traffic only. Testing checkout only in the browser where you are logged in as admin.

In practice

Open the Status report and fix anything marked outdated. Check Scheduled Actions for a backlog. Place a test order in a private window and watch the network tab for slow wc-ajax calls. Exclude cart, checkout, and my-account from your page cache.

See also

WordPress, Checkout step

Sources

Count this on a real site.

Watch my website