From woocommerce-commerce
Optimizes WooCommerce performance via HPOS, object caching, transients, database tweaks, Action Scheduler, lazy loading, and query optimization. For diagnosing store slowness.
npx claudepluginhub orcaqubits/agentic-commerce-skills-plugins --plugin woocommerce-commerceThis skill is limited to using the following tools:
**Fetch live docs**:
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Fetch live docs:
site:developer.woocommerce.com performance for performance guidewoocommerce hpos performance benefits for HPOS optimization detailswordpress object caching best practices for caching patternsHPOS moves orders from wp_posts/wp_postmeta to dedicated tables:
wp_posts table bloatWooCommerce > Settings > Advanced > Features:
Extensions must:
$order->get_meta(), $order->set_status(), $order->save())get_post_meta() / update_post_meta() on ordersWP_Query with post_type => 'shop_order'FeaturesUtil::declare_compatibility()wp_cache_get() / wp_cache_set() — in-memory cache per request:
wp_cache_set( $key, $data, 'my_plugin' )wp_cache_delete() when data changesset_transient() / get_transient() — cached values with expiration:
WC_Cache_Helper — manages WooCommerce-specific cachingwc_get_transient_version( 'product' ) — cache versioning for productswc_get_orders() / wc_get_products() instead of WP_Querylimit/per_page parametersmeta_query on large tables — use HPOS custom columns instead'fields' => 'ids' when you only need IDs'no_found_rows' => false on large result setsMove heavy operations out of the request cycle:
as_schedule_single_action( $timestamp, 'hook_name', $args )as_schedule_recurring_action( $timestamp, $interval, 'hook_name', $args )wp_enqueue_script with strategy => 'defer' or 'async'wp_script_add_data( $handle, 'strategy', 'defer' )AJAX cart fragment refreshing can be a bottleneck:
woocommerce_cart_fragments to minimize datawc_cart_fragments_params localized datasrcset, sizes)loading="lazy" on product imagesadd_image_size() and WooCommerce image settingsWooCommerce's built-in background job processor:
as_schedule_single_action( time(), 'my_hook', $args, 'my-group' ) — run onceas_schedule_recurring_action( time(), HOUR_IN_SECONDS, 'my_hook', $args ) — recurringas_enqueue_async_action( 'my_hook', $args ) — ASAP executionas_unschedule_action( 'my_hook', $args ) — cancelwc_get_orders() / wc_get_products() with appropriate limitsFetch the WooCommerce performance documentation and HPOS migration guide for exact configuration, migration steps, and optimization techniques before implementing.