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
#451Ultimate Fields23371458600Alternative PHP tag found
#452Product Options and Price Calculation Formulas for WooCommerce – Uni CPO232,5141,9291k+Output is not escaped
#453User Menus – Nav Menu Visibility235311,29880k+Non-prefixed global variable
#454UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP236942,43920k+Non-prefixed hook name
#455VK All in One Expansion Unit231,026518100k+Output is not escaped
#456Wallet System for WooCommerce – Digital Wallet, Buy Now Pay Later (BNPL), Instant Cashback, Referral program, Partial & Subscription Payments231211,2272k+Non-prefixed global variable
#457Product Table & List Builder For WooCommerce231,3622,06010k+Non-prefixed global variable
#458Checkout with Zelle on Woocommerce236371,4043k+Non-prefixed global variable
#459Easy Appointment Booking & Scheduling System – Webba Booking Calendar231,6183,3782k+Non-prefixed global variable
#460Widgets on Pages238091,30620k+Non-prefixed global variable
#461Billingo Plus integráció WooCommerce-hez231,119507900Text Domain Mismatch
#462PostFinance Checkout239792141k+Text Domain Mismatch
#463Widgets for WooCommerce Products on Elementor231,6591,4543k+Non-prefixed global variable
#464Germanized for WooCommerce232241,29670k+Non-prefixed function
#465AgenWebsite Shipping – Plugin Ongkos Kirim & Generate Resi Otomatis Semua Kurir Indonesia231,2851,107500Text Domain Mismatch
#466Predictive Search for WooCommerce23514633700Output is not escaped
#467WP All Import – Product Import for WooCommerce231,47520920k+Non Singular String Literal Domain
#468StoreCustomizer – A plugin to Customize all WooCommerce Pages235871,42620k+Non-prefixed global variable
#469ShopLentor – All-in-One WooCommerce Growth & Store Enhancement Plugin237,8802,19990k+Text Domain Mismatch
#470WP BackItUp Community Edition232579896k+Non-prefixed global variable
#471Clone2324426240k+Output is not escaped
#472WP Courses LMS – Online Courses Builder, eLearning Courses, Courses Solution, Education Courses23590876500Non-prefixed function
#473WP-CRM System – Manage Clients and Projects232971,094800Non-prefixed global variable
#474WP Crowdfunding231991,6292k+Non-prefixed global variable
#475WP Editor2350233520k+Unsafe printing function
#476WP Free SSL237351,3451k+Non-prefixed global variable
#477Stripe Payment Forms by WP Full Pay – Accept Credit Card Payments, Donations & Subscriptions231,1131,8629k+Output is not escaped
#478WP Hotelier236931,6352k+Non-prefixed global variable
#479Lead Form Data Collection to CRM232111,698400Non-prefixed global variable
#480WP-Lister Lite for Amazon233,0614,177800Output is not escaped
#481FunnelKit Automations – Email Marketing Automation and CRM for WordPress & WooCommerce239412,17920k+SQL query is not prepared
#482WP Mega Menu239927928k+Non-prefixed global variable
#483WP Migrate Lite – Migration Made Easy23369255200k+Exception output is not escaped
#484Shield Security – Smart Bot Blocking, Brute-Force Login Protection & File Scanning231,11820230k+Missing Translators Comment
#485WP STAGING – WordPress Backup, Restore, Migration & Clone231,5041,607100k+Non-prefixed global variable
#486Subscribe Forms – Beautiful Email Forms, Embedded Newsletter Forms & MailChimp Form234195422k+Non-prefixed global variable
#487Track, Analyze & Optimize by WP Tao23895756600Output is not escaped
#488Dynamic Team Manager – Team Member Showcase with grid, slider, table Elementor widget & shortcode239072,014900Non-prefixed global variable
#489Customer Support Ticket System & Helpdesk231,7191,464400Text Domain Mismatch
#490Divi Gravity Forms (WP Tools)235791,3112k+Non-prefixed global variable
#491WP Ultimate CSV Importer – WordPress Import & Export for CSV, XML & Excel231,1583,64220k+Interpolated SQL is not prepared
#492WP Webhooks – Automate repetitive tasks by creating powerful automation workflows directly within WordPress234,38088820k+Output is not escaped
#493WPMobile.App232,9831,5333k+Output is not escaped
#494WPCal.io – Easy Meeting Scheduler23694595900Direct Query
#495Comments – wpDiscuz236201,18070k+Non-prefixed global variable
#496Photo Engine (Media Organizer & Lightroom)232526502k+Direct Query
#497Masonry Gallery & Posts For Divi (WP Tools)237541,450800Non-prefixed global variable
#498WSW – Shopify WooCommerce / WordPress Integration and Migration231,4491,612500Non-prefixed global variable
#499Xpro Addons For Beaver Builder – Lite233,454640700Text Domain Mismatch
#500XT Ajax Add To Cart for WooCommerce231,0031,6901k+Non-prefixed global variable