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
#701SEO Engine – Smart SEO with AI, Schema & Redirection for WordPress242393041k+Direct Query
#702SEOKEY – Powerful SEO plugin with Expert Insights and SEO Audit246059281k+Non-prefixed global variable
#703SEO Ultimate2443726910k+Output is not escaped
#704Servebolt Optimizer241,9586811k+Text Domain Mismatch
#705Service Box Slider246181,410500Non-prefixed global variable
#706Share This Image247441,5821k+Non-prefixed global variable
#707ShiftController Employee Shift Scheduling24358196700Output is not escaped
#708Shortcodes Ultimate – Content Elements246561,552400k+Non-prefixed global variable
#709ShortPixel Adaptive Images – WebP, AVIF, CDN, Image Optimization2492632210k+Output is not escaped
#710Simple Membership242,2971,73440k+Unsafe printing function
#711Simple Social Media Share Buttons – Social Sharing for Everyone2446810120k+Output is not escaped
#712SiteGuard WP Plugin24359350500k+Output is not escaped
#713Sitepact's Contact Form 7 Extension For Klaviyo245411,412500Non-prefixed global variable
#714SKT Templates – 100% Free Templates for Elementor & Gutenberg245531,35320k+Non-prefixed global variable
#715Slider Hero with Video Background, Animation24369053k+Non-prefixed hook name
#716Video Slider – Slider Carousel242082,2033k+Request data is not unslashed
#717Slideshow Gallery LITE248964145k+Output is not escaped
#718Smart Variations Images & Swatches for WooCommerce249901,4861k+Non-prefixed global variable
#719MoreConvert Wishlist for WooCommerce243,6816299k+Text Domain Mismatch
#720Sokol: Smart WooCommerce Search245991,5516k+Non-prefixed global variable
#721SMS Alert – SMS & OTP for WooCommerce, Order Notifications & Abandoned Cart Recovery248321,8913k+Non-prefixed global variable
#722SiteOrigin Widgets Bundle24605455400k+Output is not escaped
#723Social Media Auto Publish241,4687136k+Unsafe printing function
#724Softaculous241155010k+file system operations fread
#725SpiceBox248281,81620k+Non-prefixed global variable
#726Spider Elements – Premium Elementor Widgets & Addons Library245421,555500Non-prefixed global variable
#727Spotlight Social Feeds – Block, Shortcode, and Widget2441114760k+Output is not escaped
#728Squad Modules Lite – Free Divi 5 & Divi 4 Modules for Divi Builder246051,4721k+Non-prefixed global variable
#729GEO Plugin by Squirrly SEO241,19522430k+Missing Translators Comment
#730StreamWeasels Online Status Bar245551,349500Non-prefixed global variable
#731StreamWeasels YouTube Integration245441,3841k+Non-prefixed global variable
#732Stripe Payment Forms by WP Simple Pay – Accept Credit Card Payments + Subscriptions with Stripe246346529k+Exception output is not escaped
#733Sugar Calendar – Events Calendar, Event Tickets, and Events Management Platform2442895610k+Output is not escaped
#734Sunshine Photo Cart – Client Photo Gallery & Photo Proofing for Photographers243601,4721k+Nonce verification recommended
#735Surbma | GDPR Proof Cookie Consent & Notice Bar248251,309500Non-prefixed global variable
#736Tainacan241385921k+Direct Query
#737Team Members – Multi Language Supported Team Plugin242,08111,2067k+Non-prefixed global variable
#738Templately – Elementor & Gutenberg Template Library: 6500+ Free & Pro Ready Templates And Cloud!24167225300k+Nonce verification recommended
#739The Plus Addons for Elementor – Addons for Elementor, Page Templates, Widgets, Mega Menu, WooCommerce2412,049494100k+Text Domain Mismatch
#740TI WooCommerce Wishlist24467546100k+Output is not escaped
#741Tiered Pricing Table for WooCommerce246061,99010k+Non-prefixed global variable
#742Timber248512820k+Non-prefixed hook name
#743Tutor LMS – eLearning and online course solution243284,409100k+Non-prefixed global variable
#744Ultra Addons for Contact Form 7241,54345260k+Text Domain Mismatch
#745Ultimate Maps by Supsystic241,03437410k+Non Singular String Literal Domain
#746Ultimate Member – User Profile, Registration, Login, Member Directory, Content Restriction & Membership Plugin249382,935200k+Non-prefixed global variable
#747Ultimate Post Kit Addons for Elementor2418341230k+Missing nonce verification
#748Ultimate Product Catalog245545255k+Unsafe printing function
#749Ultimate WP Mail24400546700Unsafe printing function
#750Unlimited Elements For Elementor247102,093300k+Non-prefixed global variable