WordPress.DB.RestrictedFunctions.mysql_mysqli_query

mysql mysqli query

The plugin uses a raw MySQL extension or class instead of WordPress database APIs.

medium weight

Why It Shows Up

The scan found `mysql_*`, `mysqli_*`, PDO MySQL, or related database functions in plugin code.

Why It Matters

Bypassing `$wpdb` can ignore WordPress database configuration, escaping conventions, character sets, and compatibility layers.

How to Fix

  • Replace raw MySQL calls with `$wpdb` methods or higher-level WordPress APIs.
  • Use `$wpdb->prepare()` for dynamic values.
  • If a third-party library requires a database connection, isolate it and document why WordPress APIs cannot be used.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1Matomo Analytics – Powerful, Privacy-First Insights for WordPress191,900877100k+Exception output is not escaped
#2Brizy – Page Builder2058672670k+Output is not escaped
#3Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More212,5721,2771m+Output is not escaped
#4wpDataTables – WordPress Data Table, Dynamic Tables & Table Charts Plugin211,8121,43270k+Output is not escaped
#5File Manager227405201m+Unsafe printing function
#6WP BackItUp Community Edition232579896k+Non-prefixed global variable
#7WP STAGING – WordPress Backups, Restore, Migration & Clone231,5251,610100k+Non-prefixed global variable
#81 Click Migration & Backup: Free WordPress Migration Plugin with Zero Downtime & Easy Clone24140193400Direct Query
#9404 Solution244831,35510k+Non-prefixed class
#10A2 Optimized WP – Turbocharge and secure your WordPress site2427123160k+Missing Arg Domain
#11Backuply – Backup, Restore, Migrate and Clone24709555600k+Non-prefixed global variable
#12Screen Reader Accessibility – WCAG, Text-to-Speech & AI Accessibility Fixes24235330600Non-prefixed global variable
#13Softaculous241155010k+file system operations fread
#14WEB-Translation – eTranslation Multilingual252171,057400Non-prefixed function
#15TranslatePress – Translate Multilingual sites with AI Translation255831,673400k+Non-prefixed hook name
#16WPvivid Backup for MainWP258181,79410k+Missing nonce verification
#17WPvivid — Backup, Migration & Staging259031,461900k+Non-prefixed namespace
#18EZ SQL Reports Shortcode Widget and DB Backup27165158500Output is not escaped
#19User Spam Remover31115141k+Output is not escaped
#20PW WooCommerce Bulk Edit3421914920k+Unsafe printing function
#21WPPerformanceTester3594441k+Output is not escaped
#22SQL Executioner7018172k+Non-prefixed global variable
#23Run SQL Query78138600Non-prefixed global variable