WordPress.DB.DirectDatabaseQuery.SchemaChange

Schema Change

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
#451Coupon Affiliates – Affiliate Plugin for WooCommerce241,0223,0745k+Non-prefixed global variable
#452Premmerce WooCommerce Customers Manager245641,327700Non-prefixed global variable
#453Enhanced Ecommerce Google Analytics for WooCommerce247711,4802k+Non-prefixed global variable
#454Flat Rate Shipping Method for WooCommerce241,2381,7725k+Non-prefixed global variable
#455XT Floating Cart for WooCommerce241,2492,0234k+Non-prefixed global variable
#456Payment Plugins Braintree For WooCommerce247317552k+Output is not escaped
#457Premmerce Permalink Manager for WooCommerce246331,33550k+Non-prefixed global variable
#458Product Attachment for WooCommerce241,2331,7777k+Non-prefixed global variable
#459Country Based Payments for WooCommerce245311,2953k+Non-prefixed global variable
#460AgenWebsite Shipping – Plugin Ongkos Kirim & Generate Resi Otomatis Semua Kurir Indonesia241,1991,041500Text Domain Mismatch
#461WPML Multilingual & Multicurrency for WooCommerce241,4531,618100k+SQL query is not prepared
#462WC Shop Sync – Square Payment Gateway and Product Synchronization for WooCommerce247611,612900Non-prefixed global variable
#463WordLift – AI powered SEO – Schema24278949400Non-prefixed hook name
#464Yoast SEO – Advanced SEO with real-time guidance and built-in AI2415938610m+Non-prefixed global variable
#465WP Admin Audit241,0517811k+error log print r
#466Auto Affiliate Links243754073k+Output is not escaped
#467WP Contact Slider – Contact Form Slider Widget241,3552,5899k+Non-prefixed global variable
#468WP Discourse241031141k+Nonce verification recommended
#469Iptanus File Upload245091,32510k+Non-prefixed function
#470WP Frontend Delete Account245371,3784k+Non-prefixed global variable
#471WP Helper Premium243,9081,5151k+Text Domain Mismatch
#472WP Hotel Booking241,2321,5337k+Non-prefixed global variable
#473WP Job Portal – AI-Powered Recruitment System for Company or Job Board website24691,0898k+Missing Version
#474WP-Members Membership Plugin2466938250k+Output is not escaped
#475WP Meta and Date Remover246651,31490k+Non-prefixed global variable
#476WP Notification Bell247361,591700Non-prefixed global variable
#477WP Post Author – Author Box, Multiple Authors, Guest Authors & Custom Avatars248611,57310k+Non-prefixed global variable
#478WP RSS Aggregator – RSS Import, Feed to Post, Autoblogging, AI Content241,77539340k+Text Domain Mismatch
#479WP School Calendar241,3611,720400Non-prefixed global variable
#480WSMS (formerly WP SMS) – SMS & MMS Notifications with OTP and 2FA for WooCommerce24911,7257k+Non-prefixed hook name
#481WP-Stateless – Google Cloud Storage241,0364824k+Non Singular String Literal Domain
#482WP Travel – Ultimate Travel Booking System, Tour Management Engine242271,9624k+Non-prefixed hook name
#483WP Travel Engine – Tour Booking Plugin – Tour Operator Software242,0105,68820k+Non-prefixed global variable
#484Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress242,5762,103100k+Output is not escaped
#485WP User Manager – User Profile Builder & Membership2478753910k+Exception output is not escaped
#486WPGSI: Spreadsheet Integration247841,5872k+Non-prefixed global variable
#487WPIDE – File Manager & Code Editor246101,38640k+Non-prefixed global variable
#488YITH WooCommerce Product Add-Ons244602,06920k+Non-prefixed global variable
#489Jetpack CRM – Clients, Leads, Invoices, Billing, Email Marketing, & Automation241,2113,15230k+Non-prefixed global variable
#4903DPrint Lite251751,029700Non-prefixed global variable
#491Adminify – White Label, Admin Menu Editor, Login Customizer255461,3707k+Non-prefixed global variable
#492AdRotate Banner Manager251,36384620k+Unsafe printing function
#493Advanced WordPress Reset – Debug, Recover & Reset WP2547546420k+Output is not escaped
#494AF Companion – Starter Sites, Speed Booster & Growth Suite for Professional Publishing256651,48610k+Non-prefixed global variable
#495Affiliates256891,4832k+Output is not escaped
#496FiboSearch – Ajax Search for WooCommerce25603302100k+Output is not escaped
#497All 404 Redirect to Homepage25140301200k+date date
#498Animated Number Counters254081,9492k+Non-prefixed global variable
#499Appointment Booking Calendar253271,0551k+Non-prefixed global variable
#500Appointment Hour Booking – Booking Calendar252621,25310k+Non-prefixed global variable