WordPress.DB.DirectDatabaseQuery.NoCaching

No Caching

The plugin runs a direct database query instead of using a higher-level WordPress API or cache-aware pattern.

medium weight

Why It Shows Up

Plugin Check found `$wpdb` access that queries the database directly, changes schema, or bypasses normal caching expectations.

Why It Matters

Direct queries can be correct, but they are easier to make unsafe, slower at scale, and harder for WordPress to cache or filter.

How to Fix

  • Use WordPress APIs such as post, term, metadata, option, or user functions when they fit the task.
  • If direct SQL is necessary, prepare dynamic values and add a clear caching strategy for repeated reads.
  • Keep schema changes in activation or upgrade routines and make them idempotent.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsUpdatedTop Issue
#1301WP Custom Admin Interface3426311830k+Unsafe printing function
#1302WP Maps – Google Maps,OpenStreetMap,Mapbox,Store Locator,Listing,Directory & Filters3421945360k+wp function not compatible with requires wp
#1303Insert Headers And Footers3483113300k+Non-prefixed global variable
#1304WP Mail Logging3476258300k+Nonce verification recommended
#1305LightStart – Maintenance Mode, Coming Soon and Landing Page Builder3442312400k+Request data is not unslashed
#1306WP Popup Builder – Popup Forms and Marketing Lead Generation343571433k+Text Domain Mismatch
#1307Thumbnail carousel slider342771432k+Output is not escaped
#1308WP Ultimate Post Grid34114744k+Missing direct file access protection
#1309Live Visitor Counter341081144k+Interpolated SQL is not prepared
#1310YourChannel: Everything you want in a YouTube plugin.3426211510k+Text Domain Mismatch
#1311Embed Plus for YouTube Gallery, Livestream and Lazy Loading with Facades34571195100k+Output is not escaped
#1312Zero Spam for WordPress347939320k+Non-prefixed global variable
#1313zipMoney(Zip Co) Payments Plugin for WooCommerce34147702k+Text Domain Mismatch
#1314SOOZ – AI for SEO – Bulk Generate Focus Keyphrases, Metadata, Alt Text (SEO Autopilot)35443942k+Nonce verification recommended
#1315Akismet Anti-spam: Spam Protection3533996m+Non-prefixed global variable
#1316Automatic YouTube Gallery3583599k+Output is not escaped
#1317BabyLoveGrowth Integration35291k+Direct Query
#1318BackWPup – WordPress Backup & Restore Plugin3512779500k+Non-prefixed global variable
#1319Basic Google Maps Placemarks35189803k+Output is not escaped
#1320bbPress Notify (No-Spam)3562662k+wp function not compatible with requires wp
#1321Better Recent Comments35127292k+Text Domain Mismatch
#1322BlockArt Blocks – Gutenberg Blocks, Page Builder Blocks ,WordPress Block Plugin, Sections & Template Library35561610k+block api version too low
#1323BlossomThemes Toolkit353475230k+Output is not escaped
#1324Bluehost Site Migrator3511184k+Missing direct file access protection
#1325BotWriter – AI Writer & SEO Content Generator35165033k+Direct Query
#1326Registration Options for BuddyPress35471321k+Non-prefixed function
#1327Brozzme DB Prefix & Tools Addons3524429k+Request data is not unslashed
#1328Cache Enabler35447590k+Input is not sanitized
#1329CatFolders – WordPress Media Library Folders & Categories3535766k+Direct Query
#1330CF7 Views – Complete Entry Management for Contact Form 7351721811k+Output is not escaped
#1331Change Username357104k+Direct Query
#1332CompressX — AVIF & WebP Converter, Media Replacement352642340k+Missing nonce verification
#1333Conditional Widgets3567337k+Output is not escaped
#1334Cookies and Content Security Policy3526141210k+Output is not escaped
#1335Core Framework35706210k+Text Domain Mismatch
#1336CubeWP Framework35114714k+wp function not compatible with requires wp
#1337Customizer Backup & Reset358107k+Output is not escaped
#1338Datafeedr Product Sets356022065k+Output is not escaped
#1339DesignSetGo35203134k+Non-prefixed global variable
#1340PiWeb Disable payment method / Partial payment for WooCommerce35552214k+Non-prefixed class
#1341Disk Usage Sunburst3530349k+Output is not escaped
#1342DOOFINDER Search and Discovery for WP & WooCommerce351511202k+Text Domain Mismatch
#1343DynamicTags35116162k+Text Domain Mismatch
#1344Product Bundle Builder for WooCommerce351561346k+Text Domain Mismatch
#1345Easy Social Icons3518215820k+Output is not escaped
#1346Ele Conditions for Elementor35274k+Request data is not unslashed
#1347Elementor Website Builder – more than just a page builder354642810m+Non-prefixed global variable
#1348Elements Hive for Breakdance3576251k+Output is not escaped
#1349Email Subscription Popup — Newsletter & GDPR Consent356831931k+Output is not escaped
#1350EnvíaloSimple: Email Marketing y Newsletters351472502k+Nonce verification recommended