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
#2851Simple Client Dashboard4738362k+Missing direct file access protection
#2852Website Article Monetization By MageNet47172410k+Output is not escaped
#2853FedaPay Gateway for WooCommerce472411700Output is not escaped
#2854WP Prefix Changer472716900Missing Arg Domain
#2855QuadLayers TikTok Feed4778527k+Text Domain Mismatch
#2856Post Status Notifications4798411k+Text Domain Mismatch
#2857Compress, Resize & Lazy Load Images – WPvivid Image Optimization471075810k+Missing direct file access protection
#2858XML Sitemap & Google News47270224100k+Non-prefixed global variable
#2859Add-on WooCommerce – MailPoet 3483021600Output is not escaped
#2860AffiliateWP – Store Credit484721400Output is not escaped
#2861AnWP Post Grid and Post Carousel Slider for Elementor4875817120k+Text Domain Mismatch
#2862Comment Notifier481055400Non-prefixed global variable
#2863Better Badge – Custom Product Badges for WooCommerce482147500Non Singular String Literal Domain
#2864Disable Author Pages482356k+Unsafe printing function
#2865Maps Plugin using Google Maps for WordPress – WP Google Map482893810k+wp function not compatible with requires wp
#2866Jetpack Social4882925430k+Text Domain Mismatch
#2867Library Bookshelves481259500Nonce verification recommended
#2868Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories4863273100k+Non-prefixed global variable
#2869Seznam Webmaster48478700Output is not escaped
#2870Simple Custom Post Order481077300k+Direct Query
#2871FlexStock – Product Stock Sync with Google Sheets for WooCommerce4811239700Direct Query
#2872Easy Updates Manager4813182300k+Non-prefixed global variable
#2873Tako Movable Comments4818391k+Input is not sanitized
#2874WPC Smart Wishlist for WooCommerce484438100k+Output is not escaped
#2875WP Attachment Export481625600Input is not sanitized
#2876wp-Monalisa485694700Direct Query
#2877WP Remote Users Sync483551176k+Text Domain Mismatch
#2878WS Action Scheduler Cleaner4813802k+error log error log
#2879SiteEase Bulk Delete Manager495072900Direct Query
#2880Analytics by BestWebSoft – Google Analytics Dashboard and Statistic Plugin for WordPress494781761k+Text Domain Mismatch
#2881CIO Custom Fields Importer49238500Output is not escaped
#2882Download Media Library4922401k+Text Domain Mismatch
#2883Drag and Drop Multiple File Upload for WooCommerce49114295k+Text Domain Mismatch
#2884GDPR Tools: comment ip removement4918132k+Unsafe printing function
#2885Easy Property Listings4960665k+wp function not compatible with requires wp
#2886Import into Easy Property Listings49335241k+Text Domain Mismatch
#2887Anti-Spam Protection – No API Key, GDPR Friendly4921061k+Direct Query
#2888GamiPress – Multimedia Content491125500Nonce verification recommended
#2889OneClick Chat to Order496774140k+Text Domain Mismatch
#2890Plugins Last Updated Column492114700Output is not escaped
#2891PostmagThemes Demo Import491921141k+Text Domain Mismatch
#2892ReCrawler4910404k+Direct Query
#2893Search in Place4974573k+wp function not compatible with requires wp
#2894Secondary Product Image for WooCommerce4925292k+Output is not escaped
#2895Simple MyISAM to InnoDB4911221k+Output is not escaped
#2896SKT Themes Demo Import492181044k+Text Domain Mismatch
#2897Taxonomy Images4938509k+Output is not escaped
#2898Users by Date Registered4913201k+Nonce verification recommended
#2899Was This Helpful?4919281k+Output is not escaped
#2900PDF Invoices & Packing Slips for WooCommerce – Challan49561513k+Non-prefixed global variable