WordPress.DB.DirectDatabaseQuery.DirectQuery

Direct Query

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

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#351Groovy Menu Plugin (Free)231,7292834k+Text Domain Mismatch
#352Groundhogg — CRM, Newsletters, and Marketing Automation231369212k+Non-prefixed global variable
#353Gutenberg23605327300k+Missing direct file access protection
#354Interactive Content – H5P2356538040k+Non Singular String Literal Domain
#355Happy Addons for Elementor23573444400k+Output is not escaped
#356Houzez Property Feed231,4641,5851k+Text Domain Mismatch
#357Hunk Companion232,5476876k+Text Domain Mismatch
#358Ibtana – Ecommerce Product Addons231,5471,7186k+Non Singular String Literal Domain
#359Iks Menu – WordPress Category Accordion Menu & FAQs236151,29310k+Non-prefixed global variable
#360Image Carousel For Divi235691,3091k+Non-prefixed global variable
#361Payment forms, Buy now buttons, and Invoicing System | GetPaid233891,2665k+Non-prefixed global variable
#362IP Geo Block233995898k+Output is not escaped
#363Jeg Kit for Elementor – Powerful Addons for Elementor, Widgets & Templates for WordPress2391694300k+Non-prefixed namespace
#364Joli FAQ SEO – WordPress FAQ Plugin231,0831,526700Non-prefixed global variable
#365Justified Gallery235891,4178k+Non-prefixed global variable
#366Kadence Blocks — Page Builder Toolkit for Gutenberg Editor23552,127600k+Non-prefixed global variable
#367Kenta Companion236571,4192k+Non-prefixed global variable
#368King Addons for Elementor – 80+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce, Mega Menu, Popup Builder231,8323,87710k+Non-prefixed global variable
#369Masteriyo LMS – LMS Course Builder, Quizzes & Certificates231902,1225k+Non-prefixed global variable
#370License Manager for WooCommerce231297976k+Nonce verification recommended
#371Like Button Rating ♥ LikeBtn231,2316174k+Unsafe printing function
#372Link Whisper Free233,8825,30330k+Text Domain Mismatch
#373Listdom: AI-powered Business Directory with Classifieds Ads Listings234,6733,3361k+Output is not escaped
#374LLMagnet – AI Visibility & AI SEO for Claude, ChatGPT & More236271,798400Non-prefixed global variable
#375Locatoraid Store Locator233186451k+Non-prefixed global variable
#376Custom Login Page Customizer236871,40890k+Non-prefixed global variable
#377Login With Ajax – Fast Logins, 2FA, Redirects2362352010k+Output is not escaped
#378MailPoet – Newsletters, Email Marketing, and Automation23932718500k+Exception output is not escaped
#379Master Addons For Elementor – Widgets, Extensions, Theme Builder, Popup Builder & Template Kits235251,54130k+Non-prefixed global variable
#380Master Slider – Responsive Touch Slider2380040860k+Output is not escaped
#381MasterStudy LMS WordPress Plugin – for Online Courses and Education231,4194,87510k+Non-prefixed global variable
#382Media Library File Download236151,2861k+Non-prefixed global variable
#383Media Library Assistant231,1313,75970k+Nonce verification recommended
#384MediaPress239045834k+Output is not escaped
#385Menu Image, Icons made easy235911,406100k+Non-prefixed global variable
#386Order Bump for WooCommerce231,7201,562600Output is not escaped
#387Moloni239013562k+Missing Arg Domain
#388MotoPress Appointment Booking232,3628572k+Text Domain Mismatch
#389Restaurant Menu and Food Ordering233858532k+Non-prefixed global variable
#390MP3 Audio Player – Music Player, Podcast Player & Radio by Sonaar234,06548820k+Text Domain Mismatch
#391MStore API – Create Native Android & iOS Apps On The Cloud236187643k+SQL query is not prepared
#392MultiParcels Shipping For WooCommerce231973894k+Mixed line endings
#393MPG – Multiple Page Generator, Bulk Landing Pages & Programmatic SEO234855802k+Missing nonce verification
#394MyWorks Sync for WooCommerce & QuickBooks Online232,2929,1015k+Non-prefixed global variable
#395News Kit Addons For Elementor23694194k+Post Not In exclude
#396Simple Newsletter Plugin – Noptin237159310k+Non-prefixed global variable
#397Next Active Directory Integration236832842k+Exception output is not escaped
#398NicheTable – Responsive Comparison Table Block236831,307700Non-prefixed global variable
#399Nirweb support23254617800Request data is not unslashed
#400NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization2331663990k+Output is not escaped