WordPress.DB.SlowDBQuery.slow_db_query_meta_key
slow db query meta key
A query pattern is likely to be slow on larger WordPress sites.
Why It Shows Up
The scan found query arguments such as broad meta queries, tax queries, or unindexed lookups that commonly become expensive as content grows.
Why It Matters
A query that feels fine on a small test site can become a production bottleneck on large stores, membership sites, or publishers.
How to Fix
- Avoid broad `meta_query`, `tax_query`, and unindexed searches on front-end requests when possible.
- Cache expensive results with transients, object cache, or precomputed data.
- Add narrower constraints, pagination, and indexes when custom tables are appropriate.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1101 | Show Variations as Single Products for WooCommerce | 61 | 12 | 27 | 500 | Unsafe printing function | ||
| #1102 | More Sorting Options for WooCommerce | 61 | 27 | 17 | 3k+ | Output is not escaped | ||
| #1103 | Carousel Slider | 62 | 71 | 30k+ | Non-prefixed global variable | |||
| #1104 | cbnet Multi Author Comment Notification | 63 | 18 | 7 | 1k+ | Output is not escaped | ||
| #1105 | Placeholder Image for WooCommerce | 63 | 31 | 5 | 400 | Output is not escaped | ||
| #1106 | Essential Addons for Elementor – Popular Elementor Templates & Widgets | 63 | 78 | 185 | 2m+ | wp function not compatible with requires wp | ||
| #1107 | MooWoodle – WordPress Moodle LMS Integration, Sell Moodle Courses via WooCommerce | 63 | 10 | 45 | 800 | No Caching | ||
| #1108 | Query Posts | 63 | 53 | 6 | 800 | Output is not escaped | ||
| #1109 | Simple Membership After Login Redirection | 63 | 4 | 24 | 10k+ | Missing nonce verification | ||
| #1110 | Most Popular Post Widget | 64 | 40 | 3 | 400 | Output is not escaped | ||
| #1111 | JTL-Connector for WooCommerce | 64 | 7 | 166 | 1k+ | Direct Query | ||
| #1112 | Creta Testimonial Showcase | 65 | 28 | 41 | 3k+ | Non-prefixed global variable | ||
| #1113 | Dojo for WooCommerce | 65 | 71 | 13 | 800 | Text Domain Mismatch | ||
| #1114 | EDD Hide Download | 65 | 13 | 13 | 600 | Output is not escaped | ||
| #1115 | User Last Login | 65 | 27 | 5 | 600 | Output is not escaped | ||
| #1116 | VK Link Target Controller | 65 | 13 | 10 | 30k+ | Output is not escaped | ||
| #1117 | WP SEO HTML Sitemap | 65 | 22 | 15 | 6k+ | Output is not escaped | ||
| #1118 | Easy PHP Settings | 66 | 34 | 48 | 1k+ | Missing Translators Comment | ||
| #1119 | Flexible Product Fields (WooCommerce Product Addons) – WooCommerce Product Page Editor | 66 | 59 | 98 | 10k+ | Non-prefixed global variable | ||
| #1120 | Safe Redirect Manager | 66 | 9 | 60 | 40k+ | Non-prefixed hook name | ||
| #1121 | Smart Related Products – AI-Inspired Recommendations for WooCommerce | 67 | 13 | 15 | 1k+ | Output is not escaped | ||
| #1122 | Product Specifications for Woocommerce | 67 | 12 | 80 | 1k+ | Non-prefixed global variable | ||
| #1123 | Vibe AI – MCP Server for WordPress. Connect Claude, ChatGPT & Cursor | 67 | 11 | 27 | 2k+ | Non-prefixed global variable | ||
| #1124 | Member Swipe for BuddyPress | 68 | 9 | 13 | 600 | Missing direct file access protection | ||
| #1125 | Faire for WooCommerce | 68 | 4 | 86 | 800 | Direct Query | ||
| #1126 | Sortable Word Count Reloaded | 68 | 18 | 6 | 2k+ | Output is not escaped | ||
| #1127 | WP User Avatars | 68 | 5 | 20 | 20k+ | Input is not sanitized | ||
| #1128 | Ambrosite Next/Previous Post Link Plus | 69 | 12 | 24 | 5k+ | Interpolated SQL is not prepared | ||
| #1129 | Custom Field For WP Job Manager | 69 | 16 | 54 | 900 | Non-prefixed global variable | ||
| #1130 | Ambrosite Next/Previous Page Link Plus | 70 | 11 | 21 | 900 | Interpolated SQL is not prepared | ||
| #1131 | SubHeading | 70 | 22 | 13 | 1k+ | Non Singular String Literal Domain | ||
| #1132 | Amazing Affiliates – Toolkit for Amazon Associates with Amazon Product Blocks and Amazon PAAPI5 / Creators API integration | 72 | 3 | 650 | 600 | Non-prefixed global variable | ||
| #1133 | Media File Sizes | 72 | 14 | 5 | 1k+ | Output is not escaped | ||
| #1134 | Simple Local Avatars | 72 | 14 | 16 | 100k+ | Non-prefixed constant | ||
| #1135 | Waymark | 72 | 16 | 32 | 900 | Missing direct file access protection | ||
| #1136 | BP xProfile Location | 74 | 7 | 24 | 600 | Missing nonce verification | ||
| #1137 | Markup Markdown | 74 | 18 | 128 | 2k+ | Non-prefixed global variable | ||
| #1138 | Product Layouts for WooCommerce | 74 | 5 | 75 | 1k+ | Direct Query | ||
| #1139 | Sublium Subscriptions – Subscriptions for WooCommerce – Recurring Payments, Subscription Plans & Installments | 74 | 35 | 22 | 400 | wp function not compatible with requires wp | ||
| #1140 | Zion Builder – Website Builder for Speed & Creativity | 74 | 4 | 29 | 1k+ | Non-prefixed hook name | ||
| #1141 | Temporary Login | 75 | 3 | 25 | 40k+ | Nonce verification recommended | ||
| #1142 | Extra Product Sorting Options for WooCommerce | 75 | 10 | 16 | 10k+ | Text Domain Mismatch | ||
| #1143 | YITH Slider for page builders | 75 | 13 | 22 | 1k+ | Nonce verification recommended | ||
| #1144 | FileBird Document Library | 76 | 23 | 13 | 5k+ | Text Domain Mismatch | ||
| #1145 | Leo Product Recommendations for WooCommerce | 76 | 3 | 79 | 400 | Short URL found | ||
| #1146 | Payment Gateway for Authorize.net for WooCommerce | 76 | 6 | 16 | 600 | Input is not sanitized | ||
| #1147 | Rearrange Products for WooCommerce | 76 | 1 | 22 | 20k+ | Input is not sanitized | ||
| #1148 | Siteready Coming Soon Under Construction | 76 | 6 | 30 | 3k+ | Non-prefixed global variable | ||
| #1149 | StoreAgent – WooCommerce AI Chatbot & AI Content Tools | 76 | 202 | 400 | Non-prefixed global variable | |||
| #1150 | Pelecard Gateway | 76 | 295 | 54 | 400 | Text Domain Mismatch |