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
#1BulletProof Security05,0484,94920k+2026-05-20Output Not Escaped
#2JetBackup – Backup, Restore & Migrate101,559145100k+2026-05-03Exception Not Escaped
#3Easy WP SMTP – WordPress SMTP and Email Logs: Gmail, Office 365, Outlook, Custom SMTP, and more1532163500k+2026-04-01Direct Query
#4Visual Composer Website Builder168232040k+2025-08-06Non Prefixed Variable Found
#5JetFormBuilder — Dynamic Blocks Form Builder172,0941,58890k+2026-06-17Text Domain Mismatch
#6wpForo Forum174,0332,92220k+2026-05-31Unsafe Printing Function
#7WPtouch – Make your WordPress Website Mobile-Friendly171,46632550k+2025-12-04Text Domain Mismatch
#8Prime Slider Addons for Elementor183,500230100k+2026-06-15Text Domain Mismatch
#9WP Import Export Lite1873897940k+2025-08-04Non Prefixed Variable Found
#10Element Pack – Widgets, Templates & Addons for Elementor199,448517100k+2026-06-16Text Domain Mismatch
#11Download Monitor194251,36480k+2026-06-16Non Prefixed Hookname Found
#12Event Organiser191,10654420k+2024-10-10Text Domain Mismatch
#13Advanced File Manager – Ultimate File Manager for WordPress And Document Library Solution191,218901100k+2026-06-09Exception Not Escaped
#14Matomo Analytics – Powerful, Privacy-First Insights for WordPress191,909878100k+2026-06-16Exception Not Escaped
#15Really Simple Security – Simple and Performant Security (formerly Really Simple SSL)195413853m+2026-06-17Missing Translators Comment
#16SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments195261,11990k+2026-06-16Non Prefixed Variable Found
#17BetterDocs – AI Documentation, Knowledge Base, Docs, Wikis, FAQ with Chatbot205081,40630k+2026-06-18Non Prefixed Variable Found
#18Brizy – Page Builder2058972070k+2026-06-09Output Not Escaped
#19Filter Everything — WordPress & WooCommerce Filters2056873050k+2026-06-18Output Not Escaped
#20GiveWP – Donation Plugin and Fundraising Platform203,4353,580100k+2026-06-15Output Not Escaped
#21Brevo – Email, SMS, Web Push, Chat, and more.20460646100k+2026-04-10Missing Unslash
#22Microthemer Lite – Visual Editor to Customize CSS201,0041,69910k+2026-04-15Non Prefixed Variable Found
#23Nimble Page Builder201,5911,68430k+2025-03-24Missing Arg Domain
#24Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF20557541100k+2026-05-19Output Not Escaped
#25Razorpay for WooCommerce20974855100k+2026-06-19Non Prefixed Function Found
#26Store Locator WordPress212,3721,57210k+2026-06-03Text Domain Mismatch
#27Backup Migration219811,09380k+2026-06-05Non Prefixed Variable Found
#28bbPress219293,672100k+2025-07-02Non Prefixed Function Found
#29CartFlows – Funnel Builder & Checkout Plugin for WooCommerce21461614200k+2026-06-02Text Domain Mismatch
#30Smart Grid-Layout Design for Contact Form 7211,12673410k+2026-05-08Output Not Escaped
#31Comet Cache2185724520k+2025-07-02Output Not Escaped
#32Cost Calculator Builder2132276530k+2026-06-19Non Prefixed Variable Found
#33Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More212,5721,2771m+2026-05-22Output Not Escaped
#34Envo Extra2187860020k+2026-05-27Text Domain Mismatch
#35Feeds for YouTube (YouTube video, channel, and gallery plugin)21558978100k+2026-06-10Output Not Escaped
#36Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More21521,959300k+2026-06-16Non Prefixed Variable Found
#37Imagify: Optimize Images for Top Speed (Compress & Convert to WebP/AVIF)214188511m+2026-06-01Non Prefixed Variable Found
#38Modular DS: Monitor, update, and backup multiple websites211618140k+2026-05-22Exception Not Escaped
#39MotoPress Hotel Booking213,0611,03710k+2026-06-15Text Domain Mismatch
#40Points Management System For Gamification, Ranks, Badges, and Loyalty Rewards Program – myCred211,4693,33310k+2026-06-18Non Prefixed Variable Found
#41Paid Membership Subscriptions – Effortless Memberships, Recurring Payments & Content Restriction211,9185,06510k+2026-06-02Non Prefixed Hookname Found
#42User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor216961,48350k+2026-06-10Recommended
#43Five Star Restaurant Reservations – WordPress Booking Plugin211,0991,14710k+2026-06-19Output Not Escaped
#44Royal Addons for Elementor – Addons and Templates Kit for Elementor2113,0112,530600k+2026-06-08Text Domain Mismatch
#45Professional Social Sharing Buttons, Icons & Related Posts – Shareaholic2132718110k+2024-11-05Output Not Escaped
#46Accept Stripe Payments2137388220k+2026-05-07Missing
#47ThirstyAffiliates – Affiliate Links, Link Branding, Link Tracking & Marketing Plugin2119066030k+2026-05-27Non Prefixed Variable Found
#48Revive Social – Social Media Auto Post and Scheduling Automation Plugin2125542520k+2026-05-21Non Prefixed Hookname Found
#49WCFM – Frontend Manager for WooCommerce214,7215,06720k+2026-04-25Non Prefixed Variable Found
#50WebP Express21160427300k+2026-06-19Non Prefixed Variable Found