WordPress.DB.RestrictedFunctions.mysql_mysqli_connect

mysql mysqli connect

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
#1WPPizza – A Restaurant Plugin184,6892,7031k+Text Domain Mismatch
#2GoUrl Bitcoin Payment Gateway & Paid Downloads & Membership201,832720700Non Singular String Literal Domain
#3Backup Migration219811,09380k+Non-prefixed global variable
#4WP phpMyAdmin214,5286,43550k+Missing Arg Domain
#5wpDataTables – WordPress Data Table, Dynamic Tables & Table Charts Plugin211,8121,43270k+Output is not escaped
#6Data Tables Generator by Supsystic2216419810k+Exception output is not escaped
#7Smart Popup by Supsystic223,12049210k+Non Singular String Literal Domain
#8File Manager227405201m+Unsafe printing function
#9WPBot – AI ChatBot for Live Support, Lead Generation, AI Services235141,2205k+Non-prefixed global variable
#10Redirection23523457100k+Non-prefixed global variable
#11Clone2324426240k+Output is not escaped
#12WP-CRM System – Manage Clients and Projects232971,094800Non-prefixed global variable
#131 Click Migration & Backup: Free WordPress Migration Plugin with Zero Downtime & Easy Clone24140193400Direct Query
#14A2 Optimized WP – Turbocharge and secure your WordPress site2427123160k+Missing Arg Domain
#15Backuply – Backup, Restore, Migrate and Clone24709555600k+Non-prefixed global variable
#16Screen Reader Accessibility – WCAG, Text-to-Speech & AI Accessibility Fixes24235330600Non-prefixed global variable
#17Softaculous241155010k+file system operations fread
#18WEB-Translation – eTranslation Multilingual252171,057400Non-prefixed function
#19TranslatePress – Translate Multilingual sites with AI Translation255831,673400k+Non-prefixed hook name
#20Social Media Share Buttons & Social Sharing Icons252,4331,383100k+Unsafe printing function
#21Social Share Icons & Social Share Buttons252,3651,35710k+Output is not escaped
#22RSS Redirect & Feedburner Alternative262772721k+Output is not escaped
#23EZ SQL Reports Shortcode Widget and DB Backup27165158500Output is not escaped
#24Void Contact Form 7 Widget For Elementor Page Builder282796610k+Text Domain Mismatch
#25Duplicate Post28448255300k+Unsafe printing function
#26Pop-up311039110k+Output is not escaped
#27Ultimate Posts Widget313098610k+Output is not escaped
#28Enhanced Text Widget341015830k+Output is not escaped
#29SSL Mixed Content Fix3453658k+Output is not escaped
#30WPPerformanceTester3594441k+Output is not escaped
#31Graphina – Charts and Graphs For Elementor391,91011310k+Text Domain Mismatch
#32SQL Executioner7018172k+Non-prefixed global variable
#33Run SQL Query78138600Non-prefixed global variable
#34WP PHP Version Display90643k+trademarked term
#35Display PHP Version966230k+Missing direct file access protection