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

RankPluginScoreErrorsWarningsInstallsUpdatedTop Issue
#1001Dynamic Pricing With Discount Rules for WooCommerce301361315k+Output Not Escaped
#1002Advanced Database Cleaner – Optimize & Clean Database to Speed Up Site Performance30164439100k+Interpolated Not Prepared
#1003PublishPress Blocks – Block Controls, Block Visibility, Block Permissions3025134020k+Unsafe Printing Function
#1004Analytics Insights – Google Analytics Dashboard for WordPress3024117010k+Unsafe Printing Function
#1005ApplyOnline – Application Form Builder and Manager303542602k+Output Not Escaped
#1006Contact Form 7 Connector303241965k+Text Domain Mismatch
#1007aThemes Starter Sites3025919540k+Text Domain Mismatch
#1008Private groups305833161k+Unsafe Printing Function
#1009Buy Me a Coffee – Button and Widget Plugin301391406k+Output Not Escaped
#1010Sliding Cart for WooCommerce by FunnelKit – Skip Cart & Reach WooCommerce Checkout Faster3030643430k+Non Prefixed Variable Found
#1011Contact Form 7 – PayPal & Stripe Add-on303852338k+Unsafe Printing Function
#1012Custom Field Template3052161830k+Recommended
#1013DethemeKit for Elementor3033522830k+Output Not Escaped
#1014Easy Affiliate Links301861987k+missing direct file access protection
#1015Element Invader – Template Kits for Elementor302741303k+Output Not Escaped
#1016Anti-spam, Spam protection, ReCaptcha for all forms and GDPR-compliant302642214k+Missing Unslash
#1017Kargo Takip, Kargo SMS, İlçe Mahalle Sözleşme by Hezarfen30692762k+Non Prefixed Variable Found
#1018Import WooCommerce Suite30804344k+Interpolated Not Prepared
#1019Invisible reCaptcha for WordPress309018580k+Input Not Sanitized
#1020Jetpack Protect30657217100k+Text Domain Mismatch
#1021Mailrelay303181702k+Text Domain Mismatch
#1022Meow Gallery3011118210k+Direct Query
#1023MetForm – Contact Form, Survey, Quiz, & Custom Form Builder for Elementor3063227600k+Non Prefixed Variable Found
#1024PayU CommercePro Plugin30952707k+Text Domain Mismatch
#1025Popularis Extra302371417k+Output Not Escaped
#1026Popup Builder – Create highly converting, mobile friendly marketing popups.3026722200k+Non Prefixed Variable Found
#1027QA Assistants – Driven by data3048672k+Non Prefixed Variable Found
#1028Qi Blocks304734460k+Non Prefixed Variable Found
#1029Real Cookie Banner: GDPR & ePrivacy Cookie Consent309496100k+Unescaped DBParameter
#1030Responsive Addons for Elementor – Free Elementor Addons, Kits and Elementor Templates30603873k+Non Prefixed Variable Found
#1031SmartCrawl SEO checker, analyzer & optimizer303471,30720k+Non Prefixed Variable Found
#1032SMTP for Amazon SES – YaySMTP301971223k+Exception Not Escaped
#1033Subscriptions for WooCommerce3011,19010k+Non Prefixed Variable Found
#1034Taboola30891471k+Output Not Escaped
#1035User Role by BestWebSoft – Add and Customize Roles and Capabilities in WordPress304842803k+Text Domain Mismatch
#1036Waitlist Woocommerce ( Back in stock notifier )302723114k+Output Not Escaped
#1037Checkout with Cash App on WooCommerce301223082k+Non Prefixed Variable Found
#1038Dropify301302522k+Recommended
#1039FOX – Currency Switcher Professional for WooCommerce302111,02250k+Non Prefixed Variable Found
#1040WooCommerce Stripe Payment Gateway30173591700k+Non Prefixed Hookname Found
#1041WooPayments: Integrated WooCommerce Payments30177298900k+Exception Not Escaped
#1042WCPOS – Point of Sale (POS) plugin for WooCommerce30772285k+Recommended
#1043WooCommerce Tax (formerly WooCommerce Shipping & Tax)30103198600k+Non Prefixed Class Found
#1044WP 2FA – Two-factor authentication for WordPress30269380100k+Exception Not Escaped
#1045WP Event Aggregator: Import Eventbrite events, Meetup events, social events and any iCal Events into Event Calendar301134191k+Non Prefixed Variable Found
#1046WP Inventory Manager308562331k+Output Not Escaped
#1047WPOrLogin – Custom Login, Social Login, Limit Attempts, Hide Login & reCAPTCHA304842222k+Unsafe Printing Function
#1048WPS Cleaner3043049120k+Output Not Escaped
#1049YayPricing – WooCommerce Dynamic Pricing & Discounts301741863k+Non Prefixed Variable Found
#1050YASR – Yet Another Star Rating Plugin for WordPress3025237810k+Output Not Escaped