WordPress.DB.DirectDatabaseQuery.NoCaching

No Caching

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
#901Sitemap by BestWebSoft – WordPress XML Site Map Page Generator Plugin2560820720k+Text Domain Mismatch
#902Logo Slider – Logo Showcase, Logo Carousel, Logo Gallery and Client Logo Presentation2578931330k+Text Domain Mismatch
#903Team Members – A WordPress Team Plugin with Gallery, Grid, Carousel, Slider, Table, List, and More251,7862,2202k+Non-prefixed global variable
#904Solid Testimonials – Testimonial Slider, Video Testimonials & Customer Reviews256451,5851k+Non-prefixed global variable
#905Hardcore Google Fonts Localizer25331261900Text Domain Mismatch
#906HashBar – Announcement, Notification Bar & Popup Campaign252,7186108k+Text Domain Mismatch
#907Cool Author Box – For Widget and Post Content258531,379600Non-prefixed global variable
#908HT Contact Form – Drag & Drop Form Builder for WordPress2515859310k+Non-prefixed global variable
#909Hydra Booking — Appointment Scheduling & Booking Calendar252387072k+Non-prefixed global variable
#910Icegram Collect – Easy Form, Lead Collection and Subscription plugin254242902k+Output is not escaped
#911Independent Analytics – WordPress Analytics Plugin251,1482,293100k+Non-prefixed global variable
#912Index WP MySQL For Speed2525025550k+Output is not escaped
#913Infinite Uploads – Offload Media and Video to Cloud Storage25579720800Direct Query
#914Smash Balloon Social Photo Feed – Easy Social Feeds Plugin254491,3001m+Interpolated SQL is not prepared
#915Instantio — Side Cart & One-Page Checkout for WooCommerce25560362700Output is not escaped
#916IP Location Block2552162410k+Output is not escaped
#917IP Locator25482211600Text Domain Mismatch
#918JobWP – Job Board, Job Listing, Career Page and Recruitment Plugin251,5411,5781k+Non-prefixed global variable
#919JoomSport – for Sports: Team & League, Football, Hockey & more255231,7451k+Direct Query
#920kk Star Ratings – Rate Post & Collect User Feedbacks257721,38870k+Non-prefixed global variable
#921Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more254,0191,2652k+Text Domain Mismatch
#922Limit Login Attempts Security – Login Security, 2FA, Firewall, Brute Force Prevention256186051m+Unsafe printing function
#923Live Composer – Free WordPress Website Builder251,21642710k+Output is not escaped
#924Liza Widget For Spotify and Elementor251,4782,5721k+Non-prefixed global variable
#925Login Widget With Shortcode253351986k+wp function not compatible with requires wp
#926Loginizer258145041m+Output is not escaped
#927Logo Showcase – Responsive Logo Carousel, Logo Slider & Logo Grid256561,5065k+Non-prefixed global variable
#928Bulk Page Generator – LPagery256701,9263k+Non-prefixed global variable
#929LWS Optimize – All-in-One Speed Booster & Cache Tools2543076420k+Non-prefixed global variable
#930Mail Mint – Email Marketing, Newsletter, Email Automation & WooCommerce Emails254,6751,4555k+Text Domain Mismatch
#931MaxButtons – Create buttons2562640470k+Output is not escaped
#932Media Cleaner: Clean your WordPress!2515139190k+Direct Query
#933Media Cloud Sync251,0952741k+Exception output is not escaped
#934Create251,5587696k+Text Domain Mismatch
#935Minimum and Maximum Quantity for WooCommerce255561,4363k+Non-prefixed global variable
#936Multibanco / MB Way / Payshop / Cofidis Pay (by LUSOPAY) for WooCommerce25492216400Text Domain Mismatch
#937My Calendar – Accessible Event Manager25102,19120k+Non-prefixed function
#938All-in-one Sticky Floating Contact Form, Call, Click to Chat, and 50+ Social Icon Tabs – My Sticky Elements2535259740k+Non-prefixed global variable
#939Nexter Extension – Security, Performance, Code Snippets & Site Toolkit2519871010k+Nonce verification recommended
#940NotificationX – FOMO, Live Sales Notification, WooCommerce Sales Popup, GDPR, Social Proof, Announcement Banner & Floating Notification Bar2525740040k+Non-prefixed hook name
#941Notifications for Forms & WordPress Actions253092821k+Text Domain Mismatch
#942NOWPayments for WooCommerce – Crypto Payment Gateway255341,3064k+Non-prefixed global variable
#943Object Sync for Salesforce25192296500Non-prefixed global variable
#944Password Protected — Lock Entire Site, Pages, Posts, Categories, and Partial Content256801,513300k+Non-prefixed global variable
#945PDF Invoice for WooCommerce + Drag and Drop Template Builder251,008216400wp function not compatible with requires wp
#946PDF Importer for WPForms25332329400Non-prefixed global variable
#947PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin251,0841,2969k+Non-prefixed global variable
#948phpinfo() WP — Site Health, PHP Compatibility & Server Audit252767043k+Non-prefixed global variable
#949Piotnet Forms251873743k+Alternative PHP tag found
#950Plover Kit – Blocks, Patterns, Responsive Layout and Gutenberg Editor Enhancements256851,3823k+Non-prefixed global variable