WordPress.DB.PreparedSQL.InterpolatedNotPrepared

Interpolated SQL is not prepared

Variables are interpolated into a SQL string before the query is prepared.

critical weight

Why It Shows Up

The scan found dynamic values placed directly inside SQL, often through string interpolation, before `$wpdb->prepare()` can safely bind them.

Why It Matters

Preparing a query after unsafe interpolation does not reliably protect the dynamic value.

How to Fix

  • Replace interpolated variables with placeholders.
  • Pass each dynamic value as a separate `$wpdb->prepare()` argument.
  • Use allowlists for SQL identifiers and directions that cannot be represented as normal values.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1351Coupon Generator for WooCommerce40392810k+Unsafe printing function
#1352Cron Logger4049361k+Output is not escaped
#1353Cryptocurrency Widgets Pack4022252700Unsafe printing function
#1354FameTheme Demo Importer4087430k+Nonce verification recommended
#1355GetPaid > Item Inventory4011252400Text Domain Mismatch
#1356Product Enquiry for WooCommerce4057413k+Output is not escaped
#1357WP All Import – Listings Import for Listify403427400Output is not escaped
#1358LLM Bot Tracker – AI Crawler Detection & Analytics401890800Database parameter is not escaped
#1359Modal Window – create popup modal window40417010k+Non-prefixed global variable
#1360Page Comments Off Please4017291k+Nonce verification recommended
#1361Paystack MemberPress407176400Output is not escaped
#1362Random Banner40591251k+Output is not escaped
#1363Role Based Redirect4020962k+Non-prefixed global variable
#1364Select Post Export405118500Output is not escaped
#1365Serviceform Pixel401822400Output is not escaped
#1366Multipage407228900Unsafe printing function
#1367Show Pages URL List40292341k+Non-prefixed global variable
#1368Simple Statistics for Feeds4064131800Nonce verification recommended
#1369ThemeZee Toolkit40441166k+Nonce verification recommended
#1370Thin Out Revisions409335800Non Singular String Literal Domain
#1371UTM Leads Tracker – XLPlugins402138400Output is not escaped
#1372WC Search Orders By Product404766800Nonce verification recommended
#1373Webo-facto40411021k+Nonce verification recommended
#1374NP Quote Request for WooCommerce40911459k+Non-prefixed global variable
#1375Total Sales Counts for WooCommerce4012162700SQL query is not prepared
#1376Wallet for WooCommerce403252420k+Non-prefixed hook name
#1377Word Balloon402012510k+Request data is not unslashed
#1378WP All Import – Job Listing Import for WP Job Manager4035272k+Output is not escaped
#1379WP Multisite Content Copier/Updater4019144800Interpolated SQL is not prepared
#1380WP Reroute Email401411061k+Output is not escaped
#1381WPS Menu Exporter40472210k+Output is not escaped
#1382Yektanet Ecommerce40451031k+Request data is not unslashed
#1383AMP for WP – Accelerated Mobile Pages416562,40180k+Non-prefixed global variable
#1384Alma – Pay in installments or later for WooCommerce41116681k+Exception output is not escaped
#1385Auto Image Attributes From Filename With Bulk Updater (Add Alt Text, Image Title For Image SEO)4117526100k+Unsafe printing function
#1386Autocomplete Google Address4122672k+Nonce verification recommended
#1387AxiaChat AI – Free AI Chatbot (Answers Customers Automatically)4111352k+Interpolated SQL is not prepared
#1388BuddyPress Xprofile Custom Field Types41391894k+Missing nonce verification
#1389Bulk Delete Comments4115615k+Direct Query
#1390Cache control by Cacholong418730500Non Singular String Literal Domain
#1391CMS Tree Page View – Reorder Pages with a Drag-and-Drop Tree411219650k+Unsafe printing function
#1392Hash Form – Drag & Drop Form Builder4192753k+Non-prefixed global variable
#1393Multiple Themes411124110k+Output is not escaped
#1394Log cleaner for Solid Security4165478k+Text Domain Mismatch
#1395Mollie Forms41145653k+Request data is not unslashed
#1396Native Emoji4154375k+Unsafe printing function
#1397OSS Aliyun4119404k+Request data is not unslashed
#1398Page & Post Notes4112771k+Non-prefixed global variable
#1399Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog & News4153720k+Non-prefixed global variable
#1400Simple Lightbox412148100k+Nonce verification recommended