wp_cache_get/set with a persistent backend (Redis/Memcached) eliminates redundant database queries across requests. Without it, identical queries run on every page load.
Why This Matters
eliminates repeated database queries for frequently accessed data across multiple requests
Impact: MEDIUM (eliminates repeated database queries for frequently accessed data across multiple requests)
WordPress has a built-in object cache (wp_cache_get/wp_cache_set) that stores data in memory during a single request. With a persistent backend like Redis or Memcached (via an object-cache.php drop-in), cached data survives across requests — identical queries return instantly without hitting the database.
Incorrect (repeated queries with no caching):
// ❌ Runs full WP_Query on every call, every page loadfunction get_featured_products() { return new WP_Query([ 'post_type' => 'product', 'meta_key' => '_featured', 'meta_value' => 'yes', 'posts_per_page' => 20, ]);}// Called in header, sidebar, and footer — 3 identical queries per pageget_featured_products();get_featured_products();get_featured_products();// ❌ Expensive count query on every page loadfunction get_pending_orders_count() { global $wpdb; return $wpdb->get_var( "SELECT COUNT(*) FROM {$wpdb->posts} WHERE post_type = 'shop_order' AND post_status = 'wc-pending'" );}