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
#2301Time Clock – A WordPress Employee & Volunteer Time Clock Plugin37166107500Output is not escaped
#2302Tracking Code Manager37554290k+Output is not escaped
#2303Tracking Script Manager3782572k+Non Singular String Literal Domain
#2304Ultimate WordPress Auction Plugin376231461k+Text Domain Mismatch
#2305User Meta Display377874500Output is not escaped
#2306UsersWP – Social Login37299912k+Text Domain Mismatch
#2307ValidateCertify Free37123971k+Text Domain Mismatch
#2308Featured Video for WordPress – VideographyWP37287931k+Unsafe printing function
#2309Views for WPForms – Display & Edit WPForms Entries on your site frontend3780641k+Output is not escaped
#2310Weather Atlas Widget376301119k+Output is not escaped
#2311Affiliate Sales in Google Analytics and other tools3724841k+Request data is not unslashed
#2312Widget Box Lite3731817900Output is not escaped
#2313Conditional Discounts for WooCommerce – A simple yet complete woocommerce dynamic pricing plugin37993310k+Text Domain Mismatch
#2314Piraeus Bank WooCommerce Payment Gateway371461043k+Non Singular String Literal Domain
#2315Viva Payments – Viva Wallet WooCommerce Payment Gateway3733331k+curl curl setopt
#2316Variation Swatches for WooCommerce379210310k+Output is not escaped
#2317Xendit Payment3731973k+Missing nonce verification
#2318Amazon Pay for WooCommerce372911720k+Non-prefixed class
#2319WP WooCommerce Mailchimp3762856k+Non-prefixed hook name
#2320WooCommerce PayPal Payments37194110800k+Exception output is not escaped
#2321Quickpay for WooCommerce3766564k+Nonce verification recommended
#2322Wordable – Export Google Docs to WordPress3747632k+Output is not escaped
#2323Hustle – Email Marketing, Lead Generation, Optins, Popups374,8745,94290k+Non-prefixed global variable
#2324Fix Media Library3753711k+Output is not escaped
#2325WP Category Permalink3775312k+Output is not escaped
#2326WP-Cron Control3754221k+Output is not escaped
#2327WP Export Categories & Taxonomies3716935500Output is not escaped
#2328WPForce Logout – WordPress User Login Logout Management Plugin37567328k+Output is not escaped
#2329WP Flow Plus37175146800Output is not escaped
#2330Persistent Login373381086k+Unsafe printing function
#2331WP Plugin Info Card3753376500Nonce verification recommended
#2332WP Show Stats37197103400Output is not escaped
#2333Special Text Boxes3739422k+Direct Query
#2334TopNewsWp – Display Tikcer News, RSS Feed Widget and Many More3787859800Output is not escaped
#2335WP VR – 360 Panorama and Virtual Tour Builder37327510k+Non-prefixed hook name
#2336XT Visitor Counter37177527k+Output is not escaped
#2337Yada Wiki37207452k+Text Domain Mismatch
#2338YOURLS Link Creator3719639500Text Domain Mismatch
#2339Zoho Marketing Automation37241941k+Non-prefixed global variable
#2340Accessibility3866611k+Non-prefixed global variable
#2341Action Scheduler389213420k+Exception output is not escaped
#2342Admin Management Xtended382801615k+Output is not escaped
#2343Advanced 301 and 302 Redirect38813391k+Non-prefixed global variable
#2344Alphabetic Pagination38144117500Unsafe printing function
#2345Anant Sites — Elementor & Gutenberg Readymade Template Library Free & Pro Templates38201561k+Non-prefixed global variable
#2346Activity Log – Monitor & Record User Changes3881149200k+Nonce verification recommended
#2347Ashe Extra38109543k+Text Domain Mismatch
#2348Autologin Links3873748k+Output is not escaped
#2349Automatic Post Tagger385923072k+Output is not escaped
#2350Blogger Importer38443950k+Output is not escaped